Everyone has an opinion on things. Honestly, I don’t care what your opinion is. What bothers me is how you generated your opinion.
If you actually really read this post, and still somehow think that I am just ranting about code standards, formatting, or specific software products, then you completely missed the point and I promise it is not going to be worth your time putting your 2 cents in.
- Tabs vs spaces.
- PascalCase vs camelCase.
- Red vs blue.
- Strict Typing or soft typing.
- Break-braces or inline-braces.
Bob, You Don’t Know How To Work With Other People.
I honestly believe I am a problem solver. You have a problem, I have a problem, I will solve the shit out of it to the best that both of us can be as happy as possible. I am a motherfucking debugging debugger who doesn’t even use a debugger.
I honestly believe nobody else wants actually wants their problems solved, though.
Believe it or not, I actually respect your opinion enough to find a solution that is flexible to give us both exactly what we want. If you are going to shoot down viable solutions just because of your old hat tricks, then it is not that I don’t know how to work with you – I DON’T WANT TO, I CAN’T HELP YOU. Everything I do is about progression, not regression. Everything.
Computers Should Do What I Want.
I find code easier to read if the indents are a bit wider, six spaces to be exact for me. I’m not going to put six actual spaces in my code though, because, like I said above, I actually fucking respect your opinion, and so I shall use a solution that allows us both to have what we want (the tab). You can now have your visual four spaces, I can have my visual six spaces, plus we cut out a shitload of whitespace bytes that PHP is reading off disk every page load. But here the rest of you go, shooting down viable solutions to make everyone happy just because it is not the time honoured tradition you have been dogged into from before we had GUIs on our computers.
Git hooks. Why the fuck can I not include them in the repo? Because someone could put rm -rf ~ in the hook and fuck me over when I clone? Well, the same jerkbag move could be put in the unit tests to screw me over when I run them the first time. Why should I have to copy in my .git/hooks every time I clone a repo? This is insanity, the computer has one job, to do the things for me after the first time I teach it how to. All I want is to pre-install a pre-commit hook that auto runs the linter FOR YOU to make it EASIER FOR YOU when you clone and test my code. I want it to be easy FOR YOU and FOR ME. I actually want you to use my code, and contribute, and I want it to be as easy as possible for both of us.
I also want it done without waiting for the network negotiation, meaning, I don’t want to put them in the Github side of the operation. True, I can, but you aren’t commiting and pushing to Github. You are commiting locally and then doing a pull request. So I don’t want it in the Github side.
Then just include them in a folder so they can be copied in after clone? Did you not listen at all? That is literally, the exact extra step I want to avoid. In order to make it work out of the box, I have to make a box for my box. Why wasn’t the first box good enough? Why can’t it be better?
Every Thing I Do Is For The Next Time I Do It.
Write a library. Use the library. Now stop and think about how simple [or not] it was to use. Now stop and ask yourself “why”.
- Why did I have to do this to do that?
- Christ, why did I have to do ALLLLL of that just to do this?
- Could the computer have done this for me?
- Why didn’t the computer do this for me?
- Why isn’t the computer doing this for everyone?
If those are actual questions that you can stop and ask yourself because some function was just too hard to use, you need to go back over shit and make it easier.
Before you release it.
I do this. Why doesn’t everyone else?
Bob, All You Have To Do Is This. And This. And This. And This. And This. It’s Easy. Stop Fighting Everyone.
You realise for any given topic, the number of “just do this” and “just do that” actually adds up to basically spending an entire day just to set up something that, if it had been done right the first time, would have taken like 10 seconds.
I call this Duct Tape Syndrome. Instead of taking more time the first time to do it right, developers will just duct tape a bunch of random shit together, building a product that has the learning curve of Mount Everest.
Bob, Then Just Write A Script And Be Done.
ohpifdagjg;oiuewqtlkuihdsafglkuihfdawsjlkh rewgaflkhsea ljhregkjhfhdsljkahlk fdjhslkfvjhasd;kijhgfdasr;ljhgar elkhvg;krha;w efhdflkghfs;aihgrwe;oihjgra;lkjhk;rsagj;lbsfdj;lkfdsgj;lkgfds;khi rgek;jre ;kjdfg ‘
fdgfd fdg fd g fdg
I shouldn’t be surprised nobody actually reads or considers. For some reason I am seen as just a community clown.
I in fact have many such scripts. But I long for a day that I shouldn’t have to hack around to do what it should have already just done.
Then Commit Back Patches To Fix Things!
I used to be very pro opensource. In fact, I was an open source nazi. I had my phase where I refused to use Microsoft products. Here is the thing about contributing to established projects. I used to contribute a lot of patches to Linux, Compiz-Fuzion, Colloquy, X-Chat, PHP-GTK, and lots of smaller projects. With the exception of PHP-GTK, most of my patches were ignored.
The very last patch I submitted was a patch to Colloquy to make it so that when you click the Red X on the title bar, the app would minimise instead of terminate. Why would I do that? Because that’s how every other OSX app works, like, iTunes. You hit the X, that shit keeps playing your tunes. The window just goes away. It doesn’t disconnect and stop your music.
So I made this patch, it added a checkbox to the options which allowed you to toggle between minimise or terminate, and it even defaulted to what they wanted – terminate. Then, in classic form like I have been accustomed to with open source, I was told the idea was stupid and the patch was dropped.
- Judged by visiblity. Do they know your name? Nope? They act defensive, but you may have a chance.
- Judged by notability. If they do know you, do they like you? If not, you’re fucked even if your patch is the most amazing thing ever.
That was the last day I contributed to open source. I decided I would no longer allow random jackwagons on the internet to make me feel bad. For many years, I was very happy and unstressed. Now I am trying to get back into it and nothing has changed.
I feel bad, disliked, hateful, and demotivated. If you were my girlfriend, I would have dumped your ass a long time ago. So why am I still trying?