Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
Search - "great master"
Roughly 180 days, 5 months and 29 days, 4,320 hours, 259,200 minutes, I devoted myself to a client project. I missed family outings with my daughter and my wife. People started asking my wife if we had broken up. My daughter became accustomed to daddy not being around and playing with her. Sometimes only sleeping 4 hours, I would figure out solutions to problems in my sleep and force myself to wake and put them into action. My relationship with my wife became very fragile and unstable. I knew I had to change but I just needed a little bit more time to complete this client project.
Finally, the project was ending there was light at the end of the tunnel. I “git add –-all && git status” everything looked good. I then “git commit -m “v1.0 release candidate && git push beanstalk master”
I deployed the app to the staging server where I performed my deployment steps. Everything was good. I signed-up as a new user, I upload a bunch different files types with different sizes, completed my profile and logged out. I emailed the client to arrange a time to speak remotely.
“Hello” says the client “How are you” I replied. “Great, lets begin” urged the client. I recited the apps url out to the client. The client creates a new account and tries to upload a file. The app spews a bunch of error messages on the screen.
The client says
“Merlin – I do not think you really applied yourself to this project. The first test we do and it fails. If you do not have the time to do my project properly please just say so now, so I can find somebody else who can”
I FREAKED THE FUCKOUT on the client!!!!!!! and nearly hung up. My wife was right next to and she was absolutely gobsmacked. I sat back and thought to myself “These fuckers don’t get it”. All that suffering for nothing!
Thanks for reading my rant….
BTW: I did finish the project, the client was amazed on how the app worked and it is has become an indispensable tool for their employees.19
Testivus On Test Coverage
Early one morning, a programmer asked the great master:
“I am ready to write some unit tests. What code coverage should I aim for?”
The great master replied:
“Don’t worry about coverage, just write some good tests.”
The programmer smiled, bowed, and left.
Later that day, a second programmer asked the same question.
The great master pointed at a pot of boiling water and said:
“How many grains of rice should I put in that pot?”
The programmer, looking puzzled, replied:
“How can I possibly tell you? It depends on how many people you need to feed, how hungry they are, what other food you are serving, how much rice you have available, and so on.”
“Exactly,” said the great master.
The second programmer smiled, bowed, and left.
Toward the end of the day, a third programmer came and asked the same question about code coverage.
“Eighty percent and no less!” Replied the master in a stern voice, pounding his fist on the table.
The third programmer smiled, bowed, and left.
After this last reply, a young apprentice approached the great master:
“Great master, today I overheard you answer the same question about code coverage with three different answers. Why?”
The great master stood up from his chair:
“Come get some fresh tea with me and let’s talk about it.”
After they filled their cups with smoking hot green tea, the great master began to answer:
“The first programmer is new and just getting started with testing. Right now he has a lot of code and no tests. He has a long way to go; focusing on code coverage at this time would be depressing and quite useless. He’s better off just getting used to writing and running some tests. He can worry about coverage later.”
“The second programmer, on the other hand, is quite experience both at programming and testing. When I replied by asking her how many grains of rice I should put in a pot, I helped her realize that the amount of testing necessary depends on a number of factors, and she knows those factors better than I do – it’s her code after all. There is no single, simple, answer, and she’s smart enough to handle the truth and work with that.”
“I see,” said the young apprentice, “but if there is no single simple answer, then why did you answer the third programmer ‘Eighty percent and no less’?”
The great master laughed so hard and loud that his belly, evidence that he drank more than just green tea, flopped up and down.
“The third programmer wants only simple answers – even when there are no simple answers … and then does not follow them anyway.”
The young apprentice and the grizzled great master finished drinking their tea in contemplative silence.
Found on stack overflow https://stackoverflow.com/questions...8
I was 15 years old and the first year of high school. Everything was new to me and I was such a newbie. At that time I had 2-3 year of programming behind me at an institution where they taught competitive programming. And I knew something about computers. Not much but more than most of my school mates. At that time I wanted to become "super cool hacker".
So we had this very very thought teacher for history which was also our form master. She really knows how to explained everything about history and in an interesting way. But while she was teaching we also had to write down notes from her powerpoints that were on a projector. And occasionally she would wait for us to copy everything and then move on with her lecture. But sometimes she didn't. This was frustrating as hell. The whole class would complain about this because you couldn't take notes down normal, you had to do it at double speed.
But she got one weak spot. She was not very good with computers. Our school computers were locked in some kinda closet so that students didn't have physical access to a computer and were also password protected. So I came up with the plan to plant wireless mouse in her computer so that I could control her mouse. At that time it seemed like SUPER HACKER MASTER PLAN.
So I got an opportunity one time when she left the classroom and let closet where the computer was open. I quickly sneaked the USB of the wireless mouse in the computer and then go back to the seat.
So THE FUN began.
Firstly I would only go back in powerpoint so that all my schoolmates could write down notes including me. And it was hilarious to watch when she didn't know what is happening. So then I would move her mouse when she tried to close some window. I would just move it slightly so she wouldn't notice that somebody else is controlling mouse. And by missing X button just by slight she would click other things and other things would pop up and now she had to close this thing so it became a nightmare for her. And she would become angry at the mouse and start complaining how the computer doesn't work and that mouse doesn't obey her.
One time when she didn't pay attention to her computer and projector I went to paint program and drew a heart and wrote we love you (In Slovenian Imamo vas radi -> See the picture below) and one of my school mates has the picture of it. We were all giggling and she didn't know what is was for. And I managed to close everything before she even noticed.
So it got to the point where she couldn't hand it more so she called our school IT guy so that he would check her computer (2 or 3 weeks passed before she called IT guy). And he didn't find anything. He was really crappy IT guy in general. So one week passed by and I still had messed with her mouse. So she got a replacement computer. Who would guessed all the problems went away (because I didn't have another mouse like that). I guess when our IT guy took the computer to his room and really thoroughly check it he found my USB.
So he told her what was the problem she was so pissed off really I didn't see her pissed off so much in all my 4 years in high school. She demanded the apology from whom did it. And at that moment my mind went through all possible scenarios... And the most likely one was that I was going to be expelled... And I didn't have the balls to say that I did it and I was too afraid... Thanks to God nobody from my school mates didn't tell that it was me.
While she waited that somebody would come forward there was one moment when our looks met and at that moment both of us knew that I was the one that did it.
Next day the whole class wrote the apology letter and she accepted it. But for the rest of 4 years whenever was there a problem with the computer I had to fixed it and she didn't trust anybody not even our IT guy at school. It was our unwritten contract that I would repair her computer to pay off my sin that I did. And she once even trusted me with her personal laptop.
So to end this story I have really high respect for her because she is a great teacher and great persons that guide me through my teen years. And we stayed in contact.17
1. Humans perform best if they have ownership over a slice of responsibility. Find roles and positions within the company which give you energy. Being "just another intern/junior" is unacceptable, you must strive to be head of photography, chief of data security, master of updating packages, whatever makes you want to jump out of bed in the morning. Management has only one metric to perform on, only one right to exist: Coaching people to find their optimal role. Productivity and growth will inevitably emerge if you do what you love. — Boss at current company
2. Don't jump to the newest technology just because it's popular or shiny. Don't cling to old technology just because it's proven. — Team lead at the Arianespace contractor I worked for.
4. "Developing a product you wouldn't like to use as an end user, is unsustainable. You can try to convince yourself and others that cancer is great for weight loss, but you're still gonna die if you don't try to cure it. You can keep ignoring the disease here to fill your wallet for a while, but it's worse for your health than smoking a pack of cigs a day." — my team supervisor, heavy smoker, and possibly the only sane person at Microsoft.
5. Never trust documentation, never trust comments, never trust untested code, never trust tests, never trust commit messages, never trust bug reports, never trust numbered lists or graphs without clearly labeled axes. You never know what is missing from them, what was redacted away. — Coworker at current company.9
I work for a company that develops a variety of software solutions for companies of varying sizes. The company has three people in charge, and small teams that each worked on a certain project. 9 months ago I joined the company as a junior developer, and coincidentally, we also started working on our biggest project so far - an online platform for buying groceries from a variety of vendors/merchants and having them be delivered to your doorstep on the same day (hadn't been done to this scale in Estonia yet). One of the people from management joined the team working on that. The company that ordered this is coincidentally being run by one of the richest men in Estonia. The platform included both the actual website for customers to use, a logistics system for routing between the merchants, the warehouse, and the customers, as well as a bunch of mobile apps for the couriers, warehouse personnel, etc. It was built on Node.js with Hapi (for the backend stuff), Angular 2 (for all the UIs, including the apps which are run through a WebView wrapper), and PostgreSQL (for the database). The deadline for the MVP we (read: the management) gave them, but we finished it in about 7 months in a team of five.
The hours were insane, from 10 AM to 10 PM if lucky. When we weren't lucky (which was half of the time, if not more), we had to work until anywhere from 12 PM to 3 AM, sometimes even the whole night. The weekends weren't any better, for the majority of the time we had to put in even more extra hours on the weekends. Luckily, we were paid extra for them, but the salary was no way near fair (the majority of the team earned about 1000€/mo after taxes in a country where junior developers usually earn 1500€/month). Also because of the short deadline given to us, we skipped all the important parts like writing tests, doing CI, code reviews, feature branching/PR's, etc. I tried pushing the team and the management to at least write tests and make feature branches/PRs, but the management always told me that there wasn't enough time to coordinate and work on all that, that we'll do that after launching the MVP, etc. We basically just wrote features, tested them by hand, and pushed into the "test" branch which would later get tested and merged into master.
During development, one of the other juniors managed to write the worst kind of Angular code you could imagine - enormous amounts of duplication, no reusable components (every view contained the everything used in the view, so popups and other parts that should logically be reusable were in every view separately), fuck - even the HTML was broken (the most memorable for me were the "table > tr > div > td" ones, but that's barely scratching the surface). He left a few months into the project, and we had to build upon his shit, ever so slightly trying to fix the shit he produced. This could have definitely been avoided if we did code reviews.
A month after launching the MVP for internal testing, the guy working on the logistics system had burned out and left the company (he's earning more than twice the salary he got here, happy for him, he is a great coder and an even better team player). This could have been avoided if this project had been planned better, but I can't really blame them, since it was the first project they had at this scale (even though they had given longer deadlines for projects way smaller than this).
After we finished and launched the MVP, the second guy from management joined, because he saw we needed extra help. Again I tried to push us into investing the time to write tests for the system (because at this point we had created an unstable cluster fuck of a codebase), but again to no avail. The same "no time, just test it manually for now, we'll do that later when we have time" bullshit from management.
Now, a few weeks ago, the third guy from management joined. He saw what a disaster our whole project was. Him joining was simply a blessing from the skies. He started off by writing migrations using sequelize. I talked to him about writing tests and everything, and he actually listened. He told me that I'm gonna be the one writing them, and also talked to the rest of management about it. I was overjoyed. I could actually hear the bitterness in the voices of the rest of management when they told me how to write the tests, what to test, etc. But I didn't give a flying rat's ass, I was hapi.
I was told to start off by writing a smoke test for the whole client flow using Puppeteer. I got even happier, since I was finally able to again learn new things (this stopped at about 4 or 5 months into the project).
I'm using jest as the framework and started writing the tests in TypeScript. Later I found a library called jest-extended, but it didn't have type defs, so I decided to write them and, for the first time in my life, contribute to the open source community.20
Seriously, just how exponentially fucked did this world just become.
I'm pretty sure that this post's format would be more tailored towards devrant.com (well, hereby). But I wanted to vent about it, here, now.
A copy of this post is available at https://facebook.com/irc.condor/....
Just the other day the EU Parliament accepted that widely disapproved copyright directive - article 11 and 13. Despite direct lobbying on our end. And by whom? Not by young, competent parties like the Pirates. No, instead the old fucks from the conservative party had their say, driven by nothing but incompetence and lobbying from label companies.
Then the whole ordeal with the Master/slave issue in Python started. Again met with significant outrage - and again approved while completely ignoring the voices of everyone else. I even ended up making a fork for it at https://github.com/toloveru/cpython. Please star it to show your support for the cause. It is made in response to a denied revert at https://github.com/python/cpython/....
And then we had the issue of Linus Torvalds leaving the Linux project. The single most important person when it comes to Linux.. and he left, just because he admits to be an asshole - something which apparently needs to be changed?! Dude, be a fucking asshole! That's what made the Linux kernel great in the first place!!! Yet even you give in to those SJW cunts?!!
AND THEN... If Linus' disappearance wasn't enough already, core developer at the LLVM project Rafael Avila de Espindola leaves the project as well, because of an influx of SJW's and political correctness.
It started with feminism in the past century. Now it's superiority and pink-/blue-haired warriors going for OUR SUPERIORITY AND UNIQUENESS and being offended by whatever they can possibly get offended with. Fucking cunts they are. You heard that right. FUCKING CUNTS!!! Because yeah, in my house I swear like that. Anyone who doesn't like that can fuck right off.
But what good does my criticism towards all this still serve.. nothing, does it. Those live wires that I've avoided touching for so long.. they suddenly don't feel all that repulsive anymore. Thanks society!25
This community really motivates me to master my skills and learn new stuff to become a great dev. Thank you!4
Let the student use their own laptops. Even buy them one instead of having computers on site that no one uses for coding but only for some multiple choice tests and to browse Facebook.
Teach them 10 finger typing. (Don't be too strict and allow for personal preferences.)
Teach them text navigation and editing shortcuts. They should be able to scroll per page, jump to the beginning or end of the line or jump word by word. (I am not talking vi bindings or emacs magic.) And no, key repeat is an antifeature.
Teach them VCS before their first group assignment. Let's be honest, VCS means git nowadays. Yet teach them git != GitHub.
Teach git through the command line. They are allowed to use a gui once they aren't afraid to resolve a merge conflict or to rebase their feature branch against master. Just committing and pushing is not enough.
Teach them test-driven development ASAP. You can even give them assignments with a codebase of failing tests and their job is to make them pass in the beginning. Later require them to write tests themselves.
Don't teach the language, teach concepts. (No, if else and for loops aren't concepts you god-damn amateur! That's just syntax!)
When teaching object oriented programming, I'd smack you if do inane examples with vehicles, cars, bikes and a Mercedes Benz. Or animal, cat and dog for that matter. (I came from a self-taught imperative background. Those examples obfuscate more than they help.) Also, inheritance is overrated in oop teachings.
Functional programming concepts should be taught earlier as its concepts of avoiding side effects and pure functions can benefit even oop code bases. (Also great way to introduce testing, as pure functions take certain inputs and produce one output.)
Focus on one language in the beginning, it need not be Java, but don't confuse students with Java, Python and Ruby in their first year. (Bonus point if the language supports both oop and functional programming.)
Use industry standards. Notepad, atom and eclipse might be open source and free; yet JetBrains community editions still best them.
For grades, don't your dare demand for them to write code on paper. (Pseudocode is fine.)
Don't let your students play compiler in their heads. It's not their job to know exactly what exception will be thrown by your contrived example. That's the compilers job to complain about. Rather teach them how to find solutions to these errors.
Teach them advanced google searches.
Teach them how to write a issue for a library on GitHub and similar sites.
Teach them how to ask a good stackoverflow question :>6
I just had a rather stressful morning. I should've known something was up by the sounds of thunder as I walked into the office.
I sat down and checked my emails. There was an email from the boss who was away on a business trip. The subject read, "CRITICAL BUG" and my name was mentioned. "Great...No time for coffee", was my first thought.
I began searching commits to see when and how the bug came to be. "SHIT! It was my fault", I said aloud.
(A bit of backstory, I am Irish, working in Germany with a B2 level of the German language.)
I now had to communicate the problem quickly with a senior developer who is Russian. He can't speak English well and I would not expect him to speak it. We are in Germany after all. I tried my best to communicate the issue, but I found it so difficult to understand his German in a Russian accent. Normally, in the office I speak German except when it is urgent and I must explain a problem in greater detail through English. I got past that obstacle, however, the real challenge of fixing the bug awaited.
After 2 hours of coding, I had a solution and committed it to the master branch. All the while, I had been replying to the bosses emails with updates, probably with many grammer mistakes.
We have no dedicated testers here and the code is written in a way which makes it very difficult to test (i.e. it was written many years ago). When I had initially written the code, I tested rigorously and found no issues.
Just needed to rant. I need a coffee break now...4
I like that coding is becoming more and more popular.
I like that more and more people are taking steps to manifest there ideas and potentially change the world.
But for fuck's sake... can't geeks be allowed to be the fat pimply introverts of the olden days?? This used to be a realm for the misfits, and now the same assholes who tormented said misfits are joining in and making the rest feel inadaquit all over again. You can't just be a coder anymore, now you have to be a good looking and health crazed professional with great personal skills and then somehow be able to also be a master of your craft.
I don't want to hear about how you write code in between your 100 pushups and avocado toast and having a few cold ones with the boys after your <insert sport here> game. I want to hear about how you ate pizza with one hand and crushed your build with the other in between sips of shitty soft drinks and fistfuls of candy while pulling an all nighter for the nth time cuz daylight is for pussies.
Too much pressure these days as it is, and this isn't helping.
So I've been playing some DnD with friends.
And we've been working with some lego characters, whiteboard markers and plastic sheets to draw on.
But that's always a mess:
The ink was old and did not come off again for the most part
The sides of the map curled up and and made the lego character fall over
The lego characters were too big
So I thought, why not make it digital?
And so I did.
I used UWP to make a master and a client, both using the Windows Ink api to be able to draw.
Some circles with an initial served as characters, and everything was synchronized using a TCP library I wrote half a year ago.
Yesterday we tried it out.
We all (including me) were sceptical if it would work well because the 'analog' clumsy way we did it before does have a certain charm.
But at the end we were all very enthousiastic about it and we'll be using it next time too!
It's awesome to be able to create programs for your own use :D
That's why being able to program is such a great thing!
Now I need to restructure everything, make it more efficient, add a turn order display, make the map zoom- and moveable and more and more....20
The amount of much political correctness in the dev community just pisses me off sometimes.
I've watched "Use the right tool / language for the job" has become *THE* excuse for shitty tools and languages.
Brendan Eich, I forgive you. You had 10 days and a corporation on your case.
A master can draw great art with a shitty piece of charcoal. That doesn't make charcoal THE BEST DRAWING TOOL EVARRR. It's just a testament to the master's craft.
Break free from Stockholm's syndrome.
Discard your cognitive dissonance.
PS: Don't even get me started on Java ...24
Having a 24 hour programming exam today beginning at 9 am, so I decided to go to bed at 12 so I would get 8 hours of sleep and 1 hour to get ready.
Now I've not been able to sleep for the last 3 hours and my great master plan is ruined 🙃9
I have this great professor who taught us how to be logical human beings (not that I learned much of that haha). He introduced us to web dev. He started with the basic html shit, then proceed with php and sql. His lectures were awesome. He'll then proceed with code exercises. And we'll have mini 'codefights' in his classes! yey! He taught us that in programming, it is much more important to practice logic than master a single language(no hate please). I learned to love programming through his passion. :) I learned to program in his class, now I hope never to stop learning. :D9
"four million dollars"
TL;DR. Seriously, It's way too long.
That's all the management really cares about, apparently.
It all started when there were heated, war faced discussions with a major client this weekend (coonts, I tell ye) and it was decided that a stupid, out of context customisation POC had that was hacked together by the "customisation and delivery " (they know to do neither) team needed to be merged with the product (a hot, lumpy cluster fuck, made in a technology so old that even the great creators (namely Goo-fucking-gle) decided that it was their worst mistake ever and stopped supporting it (or even considering its existence at this point)).
Today morning, I my manager calls me and announces that I'm the lucky fuck who gets to do this shit.
Now being the defacto got admin to our team (after the last lead left, I was the only one with adequate experience), I suggested to my manager "boss, here's a light bulb. Why don't we just create a new branch for the fuckers and ask them to merge their shite with our shite and then all we'll have to do it build the mixed up shite to create an even smellier pile of shite and feed it to the customer".
"I agree with you mahaDev (when haven't you said that, coont), but the thing is <insert random manger talk here> so we're the ones who'll have to do it (again, when haven't you said that, coont)"
I said fine. Send me the details. He forwarded me a mail, which contained context not amounting to half a syllable of the word "context". I pinged the guy who developed the hack. He gave me nothing but a link to his code repo. I said give me details. He simply said "I've sent the repo details, what else do you require?"
Dafuq? Dude, gimme some spice. Dafuq you done? Dafuq libraries you used? Dafuq APIs you used? Where Dafuq did you get this old ass checkout on which you've made these changes? AND DAFUQ IS THIS TOOL SUPPOSED TO DO AND HOW DOES IT AFFECT MY PRODUCT?
Anyway, since I didn't get a lot of info, I set about trying to just merge the code blindly and fix all conflicts, assuming that no new libraries/APIs have been used and the code is compatible with our master code base.
Enter delivery head. 2nd motherfucker.
This coont neither has technical knowledge nor the common sense to ask someone who knows his shit to help out with the technical stuff.
I find out that this was the half assed moron who agreed to a 3 day timeline (and our build takes around 13 hours to complete, end to end). Because fuck testing. They validated the their tool, we've tested our product. There's no way it can fail when we make a hybrid cocktail that will make the elephants foot look like a frikkin mojito!
Anywho, he comes by every half-mother fucking-hour and asks whether the build has been triggered.
Bitch. I have no clue what is going on and your people apparently don't have the time to give a fuck. How in the world do you expect me to finish this in 5 minutes?
Anyway, after I compile for the first time after merging, I see enough compilations to last a frikkin life time. I kid you not, I scrolled for a complete minute before reaching the last one.
Again, my assumption was that there are no library or dependency changes, neither did I know the fact that the dude implemented using completely different libraries altogether in some places.
Now I know it's my fault for not checking myself, but I was already having a bad day.
I then proceeded to have a little tantrum. In the middle of the floor, because I DIDN'T HAVE A CLUE WHAT CHANGES WERE MADE AND NOBODY CARED ENOUGH TO GIVE A FUCKING FUCK ABOUT THE DAMN FUCK.
Lo and behold, everyone's at my service now. I get all things clarified, takes around an hour and a half of my time (could have been done in 20 minutes had someone given me the complete info) to find out all I need to know and proceed to remove all compilation problems.
Hurrah. In my frustration, I forgot to push some changes, and because of some weird shit in our build framework, the build failed in Jenkins. Multiple times. Even though the exact same code was working on my local setup (cliche, I know).
In any case, it was sometime during sorting out this mess did I come to know that the reason why the 2nd motherfucker accepted the 3 day deadline was because the total bill being slapped to the customer is four fucking million USD.
Greed. Wow. The fucker just sacrificed everyone's day and night (his team and the next) for 4mil. And my manager and director agreed. Four fucking million dollars. I don't get to see a penny of it, I work for peanut shells, for 15 hours, you'll get bonuses and commissions, the fucking junior Dev earns more than me, but my manager says I'm the MVP of the team, all I get is a thanks and a bad rating for this hike cycle.
4mil usd, I learnt today, is enough to make you lick the smelly, hairy balls of a Neanderthal even though the money isn't truly yours.4
> Worst work culture you've experienced?
It's a tie between my first to employers.
First: A career's dead end.
Bosses hardly ever said the truth, suger-coated everything and told you just about anything to get what they wanted. E.g. a coworker of mine was sent on a business trip to another company. They had told him this is his big chance! He'd attend a project kick-off meeting, maybe become its lead permanently. When he got there, the other company was like "So you're the temporary first-level supporter? Great! Here's your headset".
And well, devs were worth nothing anyway. For every dev there were 2-3 "consultants" that wrote detailed specifications, including SQL statements and pseudocode. The dev's job was just to translate that to working code. Except for the two highest senior devs, who had perfect job security. They had cooked up a custom Ant-based build system, had forked several high-profile Java projects (e.g. Hibernate) and their code was purposely cryptic and convoluted.
You had no chance to make changes to their projects without involuntarily breaking half of it. And then you'd have to beg for a bit of their time. And doing something they didn't like? Forget it. After I suggested to introduce automated testing I was treated like a heretic. Well of course, that would have threatened their job security. Even managers had no power against them. If these two would quit half a dozen projects would simply be dead.
And finally, the pecking order. Juniors, like me back then, didn't get taught shit. We were just there for the work the seniors didn't want to do. When one of the senior devs had implemented a patch on the master branch, it was the junior's job to apply it to the other branches.
Second: A massive sweatshop, almost like a real-life caricature.
It was a big corporation. Managers acted like kings, always taking the best for themselves while leaving crumbs for the plebs (=devs, operators, etc). They had the spacious single offices, we had the open plan (so awesome for communication and teamwork! synergy effects!). When they got bored, they left meetings just like that. We... well don't even think about being late.
And of course most managers followed the "kiss up, kick down" principle. Boy, was I getting kicked because I dared to question a decision of my boss. He made my life so hard I got sick for a month, being close to burnout. The best part? I gave notice a month later, and _he_still_was_surprised_!
Plebs weren't allowed anything below perfection, bosses on the other hand... so, I got yelled at by some manager. Twice. For essentially nothing, things just bruised his fragile ego. My bosses response? "Oh he's just human". No, the plebs was expected to obey the powers that be. Something you didn't like? That just means your attitude needs adjustment. Like with the open plan offices: I criticized the noise and distraction. Well that's just my _opinion_, right? Anyone else is happily enjoying it! Why can't I just be like the others? And most people really had given up, working like on a production line.
The company itself, while big, was a big ball of small, isolated groups, sticking together by office politics. In your software you'd need to call a service made by a different team, sooner or later. Not documented, noone was ever willing to help. To actually get help, you needed to get your boss to talk to their boss. Then you'd have a chance at all.
Oh, and the red tape. Say you needed a simple cable. You know, like those for $2 on Amazon. You'd open a support ticket and a week later everyone involved had signed it off. Probably. Like your boss, the support's boss, the internal IT services' boss, and maybe some other poor sap who felt important. Or maybe not, because the justification for needing that cable wasn't specific enough. I mean, just imagine the potential damage if our employees owned a cable they shouldn't!
You know, after these two employers I actually needed therapy. Looking back now, hooooly shit... that's why I can't repeat often enough that we devs put up with way too much bullshit.3
I've promised to do the Mozilla rant about the whole meritocracy thing a few days ago.. well, this is that. Along with some other stuff along the way. Haven't ranted for a couple of days man, shit happened! But losing 6 days that could've been spent on finishing my power supply project.. to a stupid cold, it got a little bit on my nerves, so that's what I've been working on for the time being. Hopefully I'll be able to finish it up in a couple of days.
1. COCKtail party thingy
Turns out that there's this conference in Brussels in a couple of days about the whole Article 13 copyright stuff. I've been letting a mail to the MEP's about it mature on my systems for a while now.. well, maturing or procrastinating, you be the judge 😛
Now I'm glad that I waited with that though. It's mostly a developer-centric insight into how the directive would be a horrible idea.. think AI, issues with context recognition, Tom Scott's video on Penistone and Scunthorpe etc etc. But maybe I can include some stuff from the event afterwards.
Also, if you're coming to the conference too, do let me know! Little devRant meet while we're at it, it'd be fucking great! I'll try to remember to bring my Christmas ducks, they've got these cute little Santa hats 😋
(P.S.: about the whole COCKtail, I saw the email while drunk and during registration I had to choose an email address.. I figured, feminazis are doing such a great job at going out of their way to find offense in everything, I figured that I'd make their job a little bit easier by sending a COCK bomb in my registration mail address, in the hopes that it finds its way to one of them.. evil, I know XD)
2. The whole feminazi stuff at Mozilla
So Mozilla hates meritocracy now? I've been wanting to rant about the big bad meritocracy for a while now. Thank you Mozilla for giving me an incentive to actually do it!
Meritocracy, feminazis think it's bad because it's about power relationships and discrimination, right? But what if I told you that that is exactly what makes great software great. Good code, good merit, is what's welcomed in software development.. or at least it should be. Because it's a job of fucking knowledge, experience, and quality! Also, meritocracy is a great thing because nobody cares if you're a professional developer in a suit, getting paid to work on a piece of OSS, or a homegamer neonazi who's coding shit in their underwear while wanking to child porn.. nobody fucking cares. If your code, your merit, is good, contribute ahead! Super inclusive, yet apparently bad because bad code is excluded to ensure the health of the project.
So what is the alternative to the big bad meritocracy? Inclusion (or as it's looked like in practice, more like exclusion) based on gender/sex, political orientation, things like that. But not actual fucking merit, the ability to write good code. How the fuck is politics and gender going to be any good at all to an inherently meritocratic craft?! Oh but yeah, it's great for inclusion. It's like females in tech. Artificial growth is just a matter of growth numbers and the only folks who like it are fucking HR and wanketeering cunts, and feminazis. Merit, that's what matters!! And have you ever considered that females are generally not interested in technology? Or for that matter, where's our inclusion movement for men in healthcare?! Gender equality my ass.
That's just my two cents on it of course. Meritocracy shouldn't be abandoned in tech. And even if it's just a matter of calling it something else. How the fuck is it a good idea to not call a pot a fucking pot just because someone might take offense at it?! It's meritocracy, call it fucking meritocracy!!! And while we're at it, call a master a fucking master and a slave a fucking slave!15
It is time... to rant about macs!
No, seriously - I had such a different experience about which not many talk in real life or pretend that it never happens....
Model: 2015 mid MBP 15" with second to highest specs (don't have dedicated gpu).
Rattling fucking toy.... Yea, it rattles! If you shake/move ir sit in trait/bus - it non-stop rattles as a fucking toy. Worst part? It's confirmed issue by apple and it manifacturing issue that they are not keen on fixing!!!! WTF? We have 4 macs in our office - all of them fucking rattles... God help me how annoying that is. (Lose LCD control panel that unsticks from glue. Replacing it solves the issue for 1 month if you carry it anywhere).
Constant fucking crashing/updates.... Every morning I wake up and don't have an app that requires confirmation for restart - it's restarted. YAY, turning on all apps once again.... Why you may ask? Well, because if you tinker with software in any way - it fails to update it and hell breaks lose. It's been a long time since High-Sierra came around and the issue is still there (not running Mojave as it conflicts with soft I have... Woo!). Tried few times - updates fail. Resolution? Reinstall OS!
OS conflicts with applications - damn... People told me it works out of the box.... Yeah, as long as you don't upgrade the OS - then it breaks. Why? Well, because.
Piece of shit power supply. With 4 of our office power supplies - 2 of them failed twice withing warranty and once afterwards... Really? Not to mention that all 4 are starting to shear the sleeve or already did (mine is just wrapped with white electrical tape to give it a support... lol).
Bluetooth - who the hell needs that in mac, right? Well, people do. To start with - it conflicts with 2.4GHz wireless network - you might have one of those and not both at the same time. Next thing is using a device that needs constant connection (mouse, headphones, keyboard - non apple branded) - shit... They can't stay connected for more than an hour without any issues... Constant battle to re-connect it, to re-pair the device and all due to smart apple bluetooth settings. Hell, my mouse (logitech MX master) was even printing random symbols in some applications if moved. All of the issues went away after using a bluetooth dongle... WOO!!!!
Xcode... Ahh, you may never prepare your mac if you don't download 17GB of fucking xCode libraries that enables some tools to be installed/runned as you can NOT get them in any other way and you have to install full xCode software in order to get them... YAY! 17GB wasted on my 256GB SSD that I can't upgrade. GREAT!
OsX applications - ah, don't get offended but if you are using them and you are fine with them - you are probably a monkey that loves being told what to do. You can't customise any actions, you can't configure it the way you like - either you accept their default workflow or go kill yourself. Yep... Had issues with calendar, mail, iMessages, safari... None of them fit my needs :)
Resolution scaling... Fucking hell, the display is 2880 x 1800 but all you let me to use is 1440x900 without scaling? Am I blind to you? Scaling the resolution means that you are fucked if some applications don't support scaling very well. Looking at you Jetbrains - your IDES suck at scaling and slows down the pc to a potato....
Now the pros - keyboard is way better than the new ones, trackpad is GREAT - no need for mouse (using it on external 4k displays only), the battery life is great - getting around 6h of continues development time, 8 if using sublime instead of phpStorm and well, that's about it...
I've bought this device due to the fact that at that time mac and windows pc's with similiar specs costed the same while windows pc sucked with their quality of the device and trackpad... Now the situation is better and when time comes for a next upgrade - it's going to be one of these:
Razer Blade 15, Dell XPS 15, Lenovo Carbon X1 series.
And of course - LINUX. I've had enough issues with windows, and had enough of retardness of apple ecosystem, so switching it is a must for me.
Disclaimer: I might be an unhappy customer, a bit picky but I'd like my device to be setted up as I like and continue to have that until I don't like, not until the company decides to break it. Not to mention that paying almost a yearly salary in my country for one device - I'd expect it to be at least reliable and work without issues....
ps. You can disagree with me, this is my personal experience with MBP over the last 3 years :)10
I've kinda ghosted DevRant so here's an update:
VueJS is pretty good and I'm happy using it, but it seems I need to start with React soon to gain more business partnerships :( I'm down to learn React, but I'd rather jump into Typescript or stick with Vue.
Webpack is cool and I like it more than my previous Gulp implementation.
Docker has become much more usable in the last 2 years, but it's still garbage on Windows/Mac when running an application that runs on Symfony...without docker-sync. File interactions are just too slow for some of my enterprise apps. docker-sync was a life-saver.
I wish I had swapped ALL links to XHR requests long ago. This pseudo-SPA architecture that I've got now (still server-side rendered) is pretty good. It allows my server to do what servers do best, while eliminating the overhead of reloading CSS/JS on every request. I wrote an ES6 component for this: https://github.com/HTMLGuyLLC/... - Frankly, I could give a shit if you think it's dumb or hate it or think I'm dumb, but I'd love to hear any ideas for improving it (it's open source for a reason). I've been told my script is super helpful for people who have Shopify sites and can't change the backend. I use it to modernize older apps.
ContentBuilder.js has improved a ton in the last year and they're having a sale that ends today if you have a need for something like that, take a look: https://innovastudio.com/content-bu...
I bought and returned a 2019 Macbook pro with i9. I'll stick with my 2015 until we see what's in store for 2020. Apple has really stopped making great products ever since Jobs died, and I can't imagine that he was THAT important to the company. Any idiot on the street can you tell you several ways they could improve the latest models...for instance, how about feedback when you click buttons in the touchbar? How about a skinnier trackpad so your wrists aren't constantly on it? How about always-available audio and brightness buttons? How about better ports...How about a bezel-less screen? How about better arrow keys so you can easily click the up arrow without hitting shift all the time? How about a keyboard that doesn't suck? I did love touch ID though, and the laptop was much lighter.
The Logitech MX Master 3 mouse was just released. I love my 2s, so I just ordered it. We'll see how it is!
PHPStorm still hasn't fixed a couple things that are bothering me with the terminal: can't reorder tabs with drag and drop, tabs are saved but don't reconnect to the server so the title is wrong if you reopen a project and forget that the terminal tabs are from your last session and no longer connected. I've accidentally tried to run scripts locally that were meant for the server more than once...
I just found out this exists: https://caniuse.email/
I'm going to be looking into Kubernetes soon. I keep seeing the name (docker for mac, digitalocean) so I'm curious.
AWS S3 Glacier is still a bitch to work with in 2019...wtf? Having to setup a Python script with a bunch of dependencies in order to remove all items in a vault before you can delete it is dumb. It's like they said "how can we make it difficult for people to remove shit so we can keep charging them forever?". I finally removed almost 2TB of data, but my computer had to run that script for a day....so dumb...8
School gave me 3 DigitalOcean droplets to try out Kubernetes in the cloud, awesome!
Wrote an Ansible script to not only simply install docker and add users but also add kubernetes, nice!
Oh wait, error?! Well I should've known this wasn't going to be easy... ah well no problem. Let's see... Ansible is cryptic as always, it can't connect to the API server? Is it even running?
Let's ssh to the master, ah nothing is running, great. Let's try out kubeadm init and see what happens, oh gosh, my Docker version has not been validated! No problem, let's just downgrade!
How do I do that? Oh I know, change the version in the role! Wait that version doesn't exit? Let's travel to Docker's website and see what versions exist of docker-ce, oh I see, it needs a subversion, no problem.
Oh that errors too? Wait then what... Oh I need a ~ and a ubuntu and a 0 somewhere, my mistake!
Let's run it again! Fails!
Same ssh process, oh wait...
Oh god no...
Kubernetes requires 2 cores and these things only have 1...
Welp, time to ask the teachers to resize my droplet by a small amount tomorrow, hopefully I'll get a new error!
My adventure so far with Kubernetes. I'm not installing it for any serious/prod reason, just for educational purposes. K8s seems like 'endgame' to me, like one of the 'big guys' that big enterprises use so I'm eager to throw stuff at a droplet and see what happens.
Going further down the rabbit hole tomorrow!
Wish me luck :3
(And yes, I could've figured this all out beforehand with documentation, but this is more fun in my opinion)8
So, I got my very first gaming laptop on March 2015. Took a break from the almighty PC Master Race.
It's an Asus ROG G751JT. It was doing great, running my favourite games at 60FPS on high-ultra settings.
Few months after purchasing it, I've been getting a lot of BSODs with the same error (IRQL_NOT_LESS_OR_EQUAL)
As told by the guys at a local forum, I was told to try replacing the RAMs and I was stupid enough, I did. It has 4x 8GB HyperX Impact DDR3L.
The error still won't go away until I changed my SSDs. Which worked for a while until a week ago.
Getting the same BSOD countless times. This time I decided to directly talk to an expert, which is a friend of mine and guess what. It was the motherboard after all. Spent a lot of $$$$ to fix ONE BSOD.
Now I'm stuck with an Asus T100TF for about a month because I had to send it for warranty claim.
smh jfc anasmy y u so stupid for a year and a half. 10/10 worst experience (since it involved a lot of money)
What do you think of my stupidity? Comment below (10 marks).8
Ladies and gentlemen.
I wanna introduce you one of the best tools on the market. My latest and greatest creation.
Da Notch (TM)
Have you ever thought "Damn, I would like to have this notch like iPhone X, but on my pc"? Well lucky you! With Da Notch (TM) you can bring iPhone X notch to your Windows machine! You can even change it's width with simply left clicking on it and using your scroll wheel. Isn't that great?
Get it here! https://gitlab.com/aathlon/...8
So, 9months ago my scrum master came to me and asked me to spearhead a "little" API... 2months work, no worries... I started the analysis and quickly discovered that that estimation was grossly understimated...
I convinced them that it was not 3 months but 4. I alerted to the design mistakes that were made, I pushed changes and made sure the entire project worked, was stable and the best it could be... 4 months passed, target proposition donne... Several change requests since then and we have been implementing braindead CR after CR for 5 months... Most CRs came from design issued I raised but we're ignored at the time just to come back and bite them on the ass...
Horrible design, bad documentation, amateur requirements analysis... However, delivered successfully with great acceptance...
What was my reward? They rearranged my team, removing virtually every good performer.
Never did I receive a "good work" or a "thank you"... I don't want one, I am just doing my job... However can you please not fuck me in the ass!? I now have 2 projects to spearhead at the same time and virtually no team... I can only handle so much!!!
Some good news? Ok, just announced I'm the project owner of a new project, that we will take advantage and make a 2 in one.... Great! Some more work for my lap! Thank you for the workload raise!... Ok, timewise? One month! And I still don't if that includes implementation....
TL DR; did my job, got fucked with more work...
Sorry for the vent, just wandering if I should try and not do my job...2
So, here is the worst experience, not one.. but recent two of many of the encounters I had with my OOP teacher... (I am in Second Year of Engineering). Lets Call him T.
To give a background of T... He knows nothing but acts like he is the master... you'll get to know this...
*me developing a website for a client and T just bumps in*
T: Hey, what are you upto.
M:Nothing sir, just some Web-dev stuff.
T: What languages do you use?
M: I am currently using embedded ruby.
T: No no, I meant, what languages do you use for web-dev?
*inner* M: Ok, try to act stupid... He is not worth of all the knowledge.
M: Sorry sir, I just use simple HTML-CSS.
T: Ohh, I use Wordpress... It's a great language to build websites.
*inner* M: He has no idea what WP really is, he is a fuckshit.
T: It's so simple and easy, that you code for Desktop view, press Ctrl-M and then it automatically makes it for mobile view.
*inner* M: Bursts out into laughter
M: OK sir, will look over it.
*He is teaching, suddenly topic comes of Oracle Certification for Java*
T: I know many of you have idea about java, but do you have what it takes to be an OCJP..
*inner* M: LOL...
T: It is a really hard thing, and I can bet... I can bet *he did repeat that twice* that no one from you can even qualify OCJP.
*inner* M: It's time... It's time
M: Excuse me sir, first of all it's OCA... OCJP does not exist anymore... And secondly, I am an OCA...
*inner* M: Yeah... Fuck you bitch!
*assucimg inner* T:Fuck, asshole..$#@#%@!@$@%#
And whole class was like -> o.O1
hey ranteros! i like to dream and i know many of us dream of a nice machine to do anything on it, if you want to post the specs of your ideal build(s) (even a laptop, pre-built pc, space gray macbook pro... doesn't matter). and your current one.
cpu: intel i7-8700K (coffee lake),
gpu: nvidia geforce gtx 1080ti,
ram: 32gb ddr4,
ssd: samsung 960 evo 500gb,
hdd: 2tb wd black
motherboard: any good motherboard that supports coffee lake and has a good selection of i/o,
psu: anything juicy enough, silver rated,
cooling: i don't care about liquid cooling that much, or maybe i'm just afraid of it,
case: i accept any form factor, as long as it's not too oBNoxi0Us,
monitor: 1080p, maybe 1440p, i can't 4k because of the media i consume (i have tons of shit i watch in 720p) + other reasons,
keyboardmousecombo: i like logitech stuff, nothing fancy, their non mechanical keyboards are nice, for mice the mx master 2 is nice i think, i also don't care about rgb because i think it's too distracting and i'm always in darkness so some white backlight is great
os: windows 10, tails (i have some questions about tails i'll be asking in a different post,
i think this is enough for ideal, now reality:
brand: acer (aspire 7736z),
cpu: pentium dual-core 2.10ghz,
gpu: geforce g210m 2gb (with cuda™!),
ram: 4gb ddr3,
storage: hdd 500gb wd blue 5400rpm (this motherfucker stood the test of time because it's still working since i bought this thing (the laptop as it is) used in late 2009 although it's full of bad sectors and might anytime, don't worry i have everything backed up, i have a total of 5 hdds varying from 320gb to 1tb with different stuff on them),
screen: 17 inch hd-ready!!! (i think it's a tn panel), i've never done a test on color accuracy, but to my eyes it's bright, colorful, and has some dust particles between the lcd and backlight hah,
other cool things: dvd player/burner, full-sized keyboard with numeric keypad, vga, hdmi, 4 usb ports, ethernet, wi-fi haha, and it's hot, i mean so hot, hotter than elsa jean and piper perri combined,
os: windows 10, tails
if you read this whole thing i love you, and if you have some time to spare on a sunday you can share your dream rig and the sometimes cruel current one if you dare. you don't have to share them both. i know many will go b.o.b and say "what you're hoping to accomplish, i already did bitch.", that's cool as well, brag about your cool rig!8
It would be great if CS students graduated and emoloyers could plug them in anywhere knowing that they can do their job without anymore training.
There for I think students sould have full on collaboration with high risk companies. Deadlines with serious consequences if they aren't met (i.e bad reviews on your profile). Computer science and programming really needs deep thought and concentration. Being able to work in a team to deal with issues as fast as possible.
These days you don't need to know a lot of theory to get started. Knowing it all helps, but being able to figure it out and then finding beter ways to slove the issues as you progress through becoming a master in your field really burns the knowledge and skill into your being.9
I think I'm getting crazy...
Yesterday evening I finally thought it was a great idea to set up Gitlab CI to let the server build (ng cli) and deploy (via FTP) an Angular5 SPA on commits on the master branch.
The npm package "vinyl-ftp" thinks it is pretty fucking funny to just randomly stop in the middle of uploading files or just upload some files with 0 bytes in size.
WHAT THE HELL?
After some hate infested trial and error, it seems that the more parallel channels I set up, the more chance I get that all files are correctly uploaded, but never all.
If anybody here happens to be some kind of mighty byte bender and knows what to do, I'd be thankful. But I will probably try out a different client in the docker image...1
*leaning back in the story chair*
One night, a long time ago, I was playing computer games with my closest friends through the night. We would meet for a whole weekend extended through some holiday to excessively celebrate our collaborative and competitive gaming skills. In other words we would definitely kick our asses all the time. Laughing at each other for every kill we made and game we won. Crying for every kill received and game lost. A great fun that was.
Sleep level through the first 48 hours was around 0 hours. After some fresh air I thought it would be a very good idea to sit down, taking the time to eventually change all my accounts passwords including the password safe master password. Of course I also had to generate a new key file. You can't be too serious about security these days.
One additional 48 hours, including 13 hours of sleep, some good rounds Call of Duty, Counter Strike and Crashday plus an insane Star Wars Marathon in between later...
I woke up. A tiereing but fun weekend was over again. After I got the usual cereals for breakfast I set down to work on one of my theory magic decks. I opened the browser, navigated to the Web page and opened my password manager. I type in the password as usual.
Error: incorrect password.
I retry about 20 times. Each time getting more and more terrified.
WTF? Did I change my password or what?...
Ffuck fuck fuck FUCKK.
I've reset and now forgotten my master password. I completely lost memory of that moment. I'm screwed.
Disclaimer: sure it's in my brain, but it's still data right?
I remembered the situation but until today I can't remember which password I set.
Fun fact. I also could not remember the contents of episode 6 by the time we started the movie although I'd seen the movie about 10 - 15 times up to that point. Just brain afk.
So the company decided to go agile. I am now a scrum master. And we have the local product owners and all. They made us do daily stand-ups.
I don't know what is a scrum master. Nobody knows what the hell is a stand-up. It seems to be an akward 30 minutes every day, when local product owner asks questions and demands status reports.
I did some googling and it seems that the scrum master is supposed to just support the team and solve problems. In our version the scrum master finds out the system architecture and requirements, fills the backlog, does the system design and reports to the project manager(s). Also reports to the clients about the general project status in an executive meetings. I also do the sprint planning, in which we fit the vague features that we are told into time tables with ready told dates.
Oh yeah, the team is just 2 guys. One of them is me. And the other guy relies completely on me to daily tell what to do, review the work and also answer all the project and company level questions that pop into his mind. He gets angry if he doesn't receive ready-thought solutions to all problems, since "you're the boss and it's your job to tell us what to do".
This is going to be a great year.6
1. To get better at predicting timescales. I am so bad at this. Even when I break it down so many things seem to come in and fuck it up.
2. To finally master/get great with just one language. I seem to get dragged between a few and it's so bad for my productivity and skill level.
3. Learn to say "No" to people. Clients, coworkers, friends. I need to get better at just saying "No." Or "That can't be done" even if it can but I know it will be a giant pain in the ass.
4. Git gud. No I don't mean git. I mean get. I need to get better. So much better. I'm fed up of being just "average". I want to be fucking amazing. I have a ton of resources at my disposal and I have the desire to do it but I need the fucking time.
Which is where all these other ones come in. If I say "no" more then I'll have more time to get better so I won't have to say "no" as often. I'll be better so I can say "Yes and it will take X amount of time and that's final."1
Need a C++ partner..
I'm self taught developer and it's kinda hard to understand the code of your own.. since c++ is not an easy language to master I need partner whom I can easily discuss code and topics of c++. I'm in slack too and it's great community .. has people who always willing to help you out.. but the thing is it's really weird to ask simple question there again and again.. so i wanna have some partner to discuss C++ code easily..13
"I find that when someone’s taking time to do something right in the present, they’re a perfectionist with no ability to prioritize, whereas when someone took time to do something right in the past, they’re a master artisan of great foresight." - Randall Munroe
MENTORS - MY STORY (Part II)
The next mentor was my first boss at my previous job:
2.- Manager EA
So, I got new in the job, I had a previous experience in other company, but it was no good. I learned a lot about code, but almost nothing about the industry (project management, how to handle requirements, etc.) So in this new job all I knew was the code and the structure of the enterprise system they were using (which is why the hired me).
EA was BRILLIANT. This guy was the Manager at the IT department (Software Development, Technology and IT Support) and he was all over everything, not missing a beat on what was going on and the best part? He was not annoying, he knew how to handle teams, times, estimations, resources.
Did the team mess something up? He was the first in line taking the bullets.
Was the team being sieged by users? He was there attending them to avoid us being disturbed.
Did the team accomplished something good? He was behind, taking no credit and letting us be the stars.
If leadership was a sport this guy was Michael Jordan + Ronaldo Nazario, all in one.
He knew all the technical details of our systems, and our platforms (Server Architectures both software and hardware, network topology, languages being used, etc, etc). So I was SHOCKED when I learned he had no formation in IT or Computer Science. He was an economist, and walked his way up in the company, department from department until he got the job as IT Manager.
From that I learned that if you wanna do things right, all you need is the will of improving yourself and enough effort.
One of the first lessons he taught me: "Do your work in a way that you can go on holidays without anyone having to call you on the phone."
And for me those are words to live by. Up to that point I thought that if people needed to call me or needed me, I was important, and that lessons made me see I was completely wrong.
He also thought me this, which became my mantra ever since:
LEARN, TEACH AND DELEGATE.
Thank you master EA for your knowledge.
PART I: https://devrant.com/rants/1483428/...1
Let's face it: I am and will always be a tinkerer. Yes, I know my ways around, I can sneak into legacy code bases easily and throw new stuff in there, I've seen software stacks. But scarcely sound design, really modular. Even from the cleverer, experienced ones. They can master more complexity, so they can handle more spaghetti. Some essay from the 80's had this grand idea to organically 'grow' software. That's how it looks like most of the times: cancerous, parasitic super fungi (armillaria). Yeah, we all know have to fight bit-rot and entropy, but it was all lost before already. We'll never get rid of legacy protocols, legacy code.
And even when we go green field, start a fresh. Yeah, take a great design, make everything new, after some months of throwing features and outer constraints at the thing, it's the same old mud again.
But we can still dream on: some day I will design great APIs, I will have great test coverage, documentation, UML design, autometed tests, fuzzing, memchecking, I'll work professionally, clean coder style.
Pfft forget it. Maybe change for consulting, because we'll continue to dream of the 'clean' code, so you can sell the next 'recipe', development method. It's like diets. As effective. For the one selling.2
Most of us have scary stories about professors that think that they know about what they are talking about when it comes to teaching comp sci subjects. Shit is so backwards in most parts of the world with teachers showing outdated or completely pointless tech.
A friend called me the other day asking for classic ASP help because it was being used in his web class. Another was asking me about flipping c cgi web scripting. Wtf are schools teaching? Having the drive to LEARN actuall useful topics that are relevant on the market is hard enough as it is...shouldn't schools help at least a little bit? I was lucky, we were thaught Java, Python, cpp, js, sql, html5, css3, php, ruby and we had classes for node (for those interested) and asp.net mvc. Those were RELEVANT and good classes and while some outdated tech was good the rest is just bullshit. Specially since most teachers have 0 market value as develpers...but hey!! Wtf do I know! Of course my word is shit against all them doctorate and master degrees.
Gimme a break. School can be great. But a lot of the leadership there is toxic af for our industry. And while I appreciate the effort in me being thaught modern languages (and thaught is a hard word since I already knew how to program way before going to school) i still remember a teacher taking points away from an assignment for not using switch statements in Python...despite my explaining that there was no such thing (you can go around it by using a lil technique using functions, its pretty cool..pero no mames)
Or what about the time I mentioned to a fellow student how he could use markup for having more control with his windows forms while the very same teacher contradicted me saying that shit was not possible. Or the guy at the school in which I work teaching intro to programming using fucking vba...fk man if you are going the BASIC route at least teach them b4j or something fuuuuck.
I had good teachers, but they were always cast asside by dptmnt heads as if they knew better. I just hate pendejo teachers I really do.
Chinguen a su madre, bola de babosos.11
!rant - Also sorry this got rather long.
This is actually a psoitive story. I always used to be someone working on his things alone. It was great, I got shit done, I learned something. No one stressing you. But I was also lonely. The thing is that this behavior not only applied to developing. I was also able to observer that behavior in other parts of my life.
So it was time for a change. And I made a change.
It all began by switching my field of studies. Well, not really the field but some details. I switched from plain old computer science to computer science combined with media design. Here in Germany we have a nice word for it. Mediendesigninformatik.
I wish I had made that change earlier. Nonetheless it's never too late to make a change. So I began going to creative courses, like animation or graphic design. Directly from the start I made sure to talk to people. Make them remember me, offered my help because I already had experience with some things etc.
Next up was to get a job. So I got one. Now I'm working as a Game Master for a branding of escape rooms. Fun job. Also something different from developing all day, which is quite nice to do sometimes.
This job is where my change begun. The people there are amazing. I felt instantly like I've found new friends. Actually I also developed a crush on someone there and we are possibly dating soon. Not quite sure about that yet though. That also isn't the point here.
So a month later I moved out of my parents house. Living together with friends now and it's great. I'm so much more creative, so much more shit happens. I feel like a different human.
So I continued working on myself. I wanted to get really good at it. I wanted my groups to succeed whole having a challenge. They were supposed to leave happily, even when they didn't make it. Of course not everyone can be satisfied, but I noticed a positive change. Which motivated me to redesign and rethink the tool we use to give the players hints, manage their time and other stuff.
I was scared at first, but eventually I showed them what I did. Their feedback was surprisingly positive and while it will perhaps never replace our actual tools because our chef is a cheapskate, I was happy to achieve something. This continued. I made more stuff and formed connections.
Now I'm not working on things alone anymore. Recently I started working together with someone and this also was the first time I've made actual money of it. It's not a lot, but I was able to live half a month of it.
This is the beginning and I hope there will be much more. The moment I started showing other people my work and feeling confident about it made me change. I also learned to appreciate other people's compliments and kind of get an high of them, but I'm not sad when they don't like it. I feel like I've grown as a human and are more mature.
Have you experienced something similar? Can't wait to read your stories.3
Dungeons and dragons, I am the dungeon master for two games and a player in one. Great laugh if you can get everyone in the same room with lots of booze 😁2
One of my favorites from The Tao of Programming:
A Master Programmer passed a novice programmer one day.
The Master noted the novice's preoccupation with a hand-held computer game.
"Excuse me," he said, "may I examine it?"
The novice bolted to attention and handed the device to the Master. "I see that the device claims to have three levels of play: Easy, Medium, and Hard," said the Master. "Yet every such device has another level of play, where the device seeks not to conquer the human, nor to be conquered by the human."
"Pray, Great Master," implored the novice, "how does one find this mysterious setting?"
The Master dropped the device to the ground and crushed it with his heel. Suddenly the novice was enlightened.
Let’s start the week great with a scrum master complaining about a functionality that isn’t working, and a coworker that’s pointing in my direction.
Go point your finger elsewhere (***)3
TL;DR: idiot 'team leader' does mindless merge to master. Precious time wasted in a high pressure deadline environment.
So, i work currently at one of Belgiums largest consulting company's at brussels airport, we are moving their analytics platform to the cloud.
We use puppet to manage the systems.
When i started i noticed immediately that their 'development workflow' is hardly to be named as such, because they simply change stuff directly on server , manual 'temporary' fixes everywhere, hardcoded stuff, non validated code... Basically the way one would develop in their garage, not in a consulting company as this one. But that is just the beginning.
A month ago i did a major effort to equalize all the discrepancies between the codebase and the server. Ensured entire codebase to be validated, syntax checked, parsed, tested... It works. A 'great codebase overhaul' commit was PR'ed to master and got merged.
Yesterday the team lead, i'll call him 'B-tard' from here on, has also 'equalized the discrepancies between codebase, server and the restnof the stale branches on the repo' . i was doing my other work on my branch so no fucks given. This is where i should have given some fucks.
Anyways, today. The day starts every day with merging the master branch into your working branh because you need the latest working codebase, right?
This fucking dipshit smug b-tard has done a mindless merge of the entire codebase, effectively removing ALL validated working code for provisioning servers. Control blocks, lookup functions, lambda's... Basically everything he did not understand.
At the same time the project is already way beyond the allotted budget in pkney and time, so there is a huge pressure to have a working 'production' environment TODAY!
THIS MOTHERFUCKING B-TARD JUST MADE THAT IMPOSSIBLE.
i'm loving this assignment, i'm loving the PM, the collegues, the environment, the location... everything. All but this fuckibg b-tard that somehow got his position by sucking dick or licking ass or both...
I wanna get out asap.
Oh... While typing this and arriving at the room of the office... It is locked, i have no key.
Sigh Im getting depressed from going to work whilst a few weeks ago it gave me a bunch of happines.
I think its due that management is approaching a triple deadline (?!?!?!) project in an agile/scrum way (?!?!??!)..
We can not change our data model completely when we have to be in acceptance in 3 weeks and do a demo in a few days..
Yes we can work around that but fuck database design theory and lets ignore all primary keys and foreign keys, great idea
We have to create and prioritise user stories on our own? We have two product owners and a scrum master.
Scrum master offers to deal with organising and creating tickets to organise Infrastructure without having a laptop of the client, so no Service Now access or any other system..
Guess who has to do it in the end..
Many question marks about this project
So I have question about my resume.
During my college time, I have done two projects related to politics:
One is to analyze the bias of media. What I did is scrape news covers for Trump and Hillary during election year and get sentiment analysis. The result is not surprising that among NY Times, NBC, Fox, Eashington Post, and CNN, Fox news is clearly favoring Trump, since Fox news is a republican news site.
The other project I did was to analyze the speech complexity and sentiment of the election. One of the observation we made was that Hillary and Trump are almost at the same level regarding speech complexity. However, Trump has a more positive sentiment in the speech, which is true consider how much he loves to say make America great again.
Now the question is, when I gave my advisor my resume, she said that I'd better not put those two projects on my resume since they are related to politics.
But, I am applying for a data science master degree. Seriously, I was just collecting the data and the data speaks for himself, why should I take those projects off my resume? I'm very proud of those projects I did as a matter of fact.
So here is the question. Shall I take off those two projects on my resume because they were political or I should leave it thereawarreally need some professional views. Please.1
Generally have great experience with our management.
I work at a scale-up, so I've had some run-ins with the founder shifting priorities too often in the early days, but he's got enough notion of tech to understand when we're telling about the why(not)s of what we can and can't do
A while back we got a product owner/manager/scrum master and he's great too. I've had times when he put pressure on making deadlines when it was really not helping, but overall great guy with a lot of empathy and respect for his team.
But recently I've been starting to feel like we (the dev team) are getting more and more excluded from the decision-making process of the features & designs that we're going to be working on. We used to have a say in what we felt like was a good idea for a feature or a design, but it feels to me like we don't get asked that question any more of late...
Not sure if I'm imagining it, or overreacting to a logical (possibly positive?) evolution in our development workflow...
Experience with Plasma Mobile, part 2.
I was able to clone the official master repository and commit my hacks to it, but when I sent the pull request, the current active maintainer said that the master branch was actually severely out of date and to try the "halium-flash" branch.
So I did. I checked out the "halium-flash" branch and attempted to install Plasma Mobile. The bash file used to flash the phone still needed to be hacked around, though my previous commit was made irrelevant by the change. However, I did get it working on my phone.
So, here are my thoughts: It's most definitely not ready. The lock screen looks pretty and is well put together, and the "desktop" and icons for applications look very nice.
However, my phone does not have a physical "home" button, and Plasma Mobile to date does not have a digital "home" button. So, in order to close an application I have to literally reboot my phone.
As of yet there seems to not be any tactile feedback or visual feedback, which is odd when typing in the passcode to log into Plasma Mobile or trying to open an application.
Firefox crashes if you try to open it, and currently there are two choices of wallpaper. I haven't tried calling someone, but I'm fairly certain that Plasma Mobile does not support telephony on my phone type.
So, my verdict is still the same: I have great hopes for the Plasma Mobile project, but unless you are a developer who is interested in making it a better product, I would stay away for now.6
TL;DR - not sure if I should take a full-time gig at my current pretty good job, or go do an internship with AWS for the summer.
Needing some wizened development career advice, guys. I am coming to a small crossroads at the moment.
I am in my last year of school getting a BS in Computer Science. I love it. I had a pretty sweet job at a cool startup, until recently, when they were bought by a bigger company. This turned out to still be alright though, since they hired everyone on to the new company to keep our codebase alive and well (it's a pretty good product that they don't want to get rid of). Except they hired me as an Intern instead, which I thought was weird, but they said that's normally what they do with peeps that are still in school. Whatevs. But then I got offered an internship at some company called Amazon Web Services to be a Systems Analyst Intern (basically cloud support engineering from the sounds of it). And then I told the cats at the new company that I was considering this internship and they started saying they'd consider giving me full-time. And they didn't want to lose me.
Well... my thing is that both are tempting. Like the company that'd offer me a full-time gig would be cool because I'd get to keep working on the projects I'm currently on and I'd be immersed in a good development cycle and whatnot. Probably more full-stack programming, which I like a good bit and want to master more of. The Amazon thing seems cool, but I worry that it'd be more of a support gig. And as well as they pay, I may not get as good of development experience. Granted I was told I could definitely get into scripting to automate various things. But I just don't know how much would actually be that. Except having Amazon on my resume would likely be pretty great to have also coming out of graduation.
Down yet another avenue of thought, the AWS internship would only be for a few months in the Summer. So there's a chance I could come back and I could get my old job back. But maybe they would see me as disloyal or something and not want me to come back. I would also likely forfeit my retention bonus (which is an ok amount, but not a deal-breaker and it's spread out over 3 years) for staying on with the company after the acquisition.
I just don't know. Would it be better to stay where I'm at or go on a wild adventure over the summer? Help me, DevRant Kenobi you're my only hope...3
I like the people I work with although they are very shit, I get paid a lot and I mostly enjoy the company but..
Our scrum implementation is incredibly fucked so much so that it is not even close to scrum but our scrum master doesn't know scrum and no one else cares so we do everything fucked.
Our prs are roughly 60 file hangers at a time, we only complete 50% of our work each sprint because the stories are so fucked up, we have no testers at all, team lead insists on creating sql table designs but doesn't understand normalisation so our tables often hold 3 or 4 sets of data types just jammed in.
Our software sits broken for months on end until someone notices (pre release), our architecture is garbage or practically non existent. Our front end apps that only I know the technology have approaches dictated by team lead that has no clue of the language or framework.
Our front end app is now about 50% tech debt because project management is so ineffectual and approaches are constantly changing. For instance we used to use view models for domain transfer objects... Now we use database entities, so there is no commonality between models but the system used to have shared features relying on that..sour roles and permissions are fucked since a role is a page regardless of the pages functionality so there is no ability to toggle features, but even though I know the design is fucked I still had to implement after hours of trying to convince team lead of it. Fast forward a few months and it's a huge cluster fuck to enforce.
We have no automated testing of any sort or manual testing in place.
I know of a few security vulnerabilities I can nuke our databases with but it got ignored.
Pr reviews are obviously a nightmare since they're so big.
I just tried to talk to scrum master again about story creation since any story involving front end ui as an aspect of it is crammed in under one pointed story as sub tasks, essentially throwing away any ability to calculate velocity. Been here a year now and the scrum master doesn't know what I mean by velocity... Her entire job is scrum master.
So anyway I am thinking about leaving because I like being a developer and it is slowly making me give up on doing things to a high standard and I have no chance of improving things, but at the same time the pay is great and I like the people.
Opengenus talks about how his honesty bit him in his ass and I'd like to expound further on the topic.
You have to remember, honesty is rarely rewarded.
My motto is LLAMF, a powerful tool for success.
Like a buddhist mantra, I chant it every morning as I'm getting out of bed.
If you look around you'll see this wherever you turn your head. On the news? People lying like a mothafuka for their job. People selling something on tv? Billboard? internet? Lying like a mothafuka. People in fancy suits with fancy pieces of cloth tied around their neck to tell you who the master holding their dog leash is? "I did not kill that hooker", "We have to sign the law to know whats in it", "These ratfuck starving terrorhobos huddled inside a cave out in buttfuck nowhere, saudi arabia? They made a nuclear bomb!". Lying..like a mothafuka.
And all of them have careers, or jobs, or some cause, or principles they 'believe' in. Or nation they 'serve'. Or any other justification, any other *excuse*. But really thats all it is.
In this great big universe, you didn't exist for billions, possibly trillions of years, and now you do, for a brief span, and then afterward, you'll cease to exist (maybe, who knows what happens after death?), for more billions or trillions of years.
Put on that scale, no utterance out of your mouth *can* or *will* ever really truly matter. at all.
I say, go nuts for donuts.
Did you know I was almost a billionaire? TRUE STORY.
Did you know I once told a guy in a turtle neck sweater about this great new idea for portable phones. His name was steve jobs. TRUE STORY.
Did you know I cowrote a canticle for leibowitz? TRUE STORY.
Did you know I'm a mothafuking time traveler? TRUE STORY.
Napoleon said "Imagination Rules The World". Of course he also said a bunch of other things, mostly (all) in french. I don't speak french. But why live in ordinary reality when countless others do? Why not live in a world all your own making, and let people believe whatever the hell you tell them? Why not be the most interesting person in the room? Or the most obnoxious, but hey, at least no one can say you didn't try!
Lie to me. You know I love it when you do.
My favorite lie I tell to *myself*, every morning. Like zen. "I'm gonna do something great one day."
And it keeps me going, keeps me high.
Whats your favorite kinda lie?5
It would be great if it had Angular, Node.js being used on EC2 instances with a ELB and a RDS (master and slave) instances, some caching etc.2
I'm seeking opinions and thoughts on my predicament.
I have 2ish paths before me.
Next year I resume my studies in Science Communication and Computer Science in particiliar a bachelor of science, I have considered then doing master in managent or computer science.
1) I am able to have a income of about 800 AUD a fortnight (this is to support me during study without requiring work) plus extra from a part time job whilst I study for about 2 years. Throughout this time I would like to skill up in a variety of fields as immensley as possible.
2) I can accept a full time junior web developer job while I study, this job is with a great government research organisation which as a first FT job looks great on a resume, it is is project based work where I get given a project and code and pretty much complete it. The job is flexible, I can mostly work where-ever I want, at home, at a cafe, travelling. With maybe a meeting once a week. The pay is about 65kAUD a year.
Both options are very attractive options with each containing there own pros and cons. With the extra money I could learn more or use it to grow a business or do more.
However without the FT job I could still earn about 1-1.5k a fortnight for alot less time.
I am still discovering what to do in life, I'm very good at public speaking and would like to experience and learn more about lots of different things. My current knowledge is very broad from engineering to CS, graphic design, authoring, trade skills, Digitial design and more.
Ideally I would like to learn how to lead people, to make the world a better place and help people. Figuring out where my strengths lay and where to apply them is difficult as I am fascinated by so many things.
I worry about taking the FT job as it might detract from my studies and lead me to pursueing mostly only web development work as well as take up time that might be better spent on extra study or in a leadership position in a uni club.
The PT job is a IT Systems Technician in the Australian Defence Force.
Which is a interesting experience within itself, different from civilian life and also I would be learning about systems that I might have less experience with.
I have such broad interests in alot of fields that I don't seem to be focussed on select things or areas like other devs I've met, Science Communication is a versitile field, one of my professors expertise is on doctor who and it's role in science engagement, she has written books on it. Others are in public policy or directed podcasts or even made games. Despite my broad interests computer science was always a gield I did well in.
Any thoughts, opinions or questions are welcome.
I have a blog/portfolio I put my work and projects up if it helps people know more about me, you can find it at curiosityplace.wordpress.com2
So, while working on a story, I noticed something which the lead dev did that is now giving me problems.... and he's offline while in another building.
Ok, I'll just contact our PM to see how much is due today (visual happy path only or API call is needed too)...same state as lead dev.
Scrum master, the person who's in charge of contacting anyone... no flipping clue where she's at.
It's great being on such a small team!2
I'd like to read your opinions about having a Master and or a PhD to develop cool machine learning projects. Do you think I could achieve great things without them? What advantages do you believe having those degrees have?4
Hey, just had a doubt. https://null-byte.wonderhowto.com/ take any website like this one (ideally any type of site with lots of links to other pages or posts). So my doubt is , is there a way to not hardcode all the links in the master page?. Or how exactly do professionals manage such sites?. I tried googling a lot but couldn't find the exact answer i was looking for. It'll be great if u can help me with this. Ik it's a noob question, but still😅8
Looking at @striker28 's rant made me think of my time I did my MSc and I think it needs it's own separate rant so here it goes:
So I did an MSc at one of the big league unis in London. First clue was during week 1 where in one of the class a mature student asked whether there would be actual coding during the course. There was an audible gasp from everyone else! Once the lecturer said the unfortunatly they wouldn't be you could hear the sigh of relief from the students...
Next up was all the lectures being placed in the freakin' basement of the university in crap, smelly rooms with annoying ticking A/Cs whereas all the social siences, business and other subjects had lecture halls and classrooms above ground. The contempt for CS from the university's direction was palpable.
Then there was the relegation to the theory-only (i.e. abstract with pen/paper) "tutorial" to the hand of T/As with bugger-all teaching experience. In short most were terrible and should've found a way to abscond themselved from this obligation which was part of the terms of their phd grants unfortunatly.
Further into the course there was the "group project". Oh boy! Out of the 5 in the group my now mature student friend and I were the only one commiting to the repo. There was either no code and a lot of bullshit from the others or crap code that didn't even compile despite their assurances it was all good.. Someone clearly never actually coded and pressed "run" in their lives which is fucking surprising since they've managed to graduate with a BSc and get into a MSc somehow. None of the code "made" by the other 3 persons made it into the master branch for release.
The attitude was that of "We (hahahah) wrote loads of code. We'll get a great mark!". At that stage the core wasn't even complete and the software didn't work yet.
Some of the courses where teaching things already 10 years out of date and when lecturer where pressed on that the few mature students that happen to be there the answer was always "yes, we are planning to update it for next year". Complete bullshit. Didn't help that some of the code on the lecture slides was not even correct! I mean these guy are touted as "experts" in their field...
None of the teory during the entire year was linked to any coding. Everything was abstract with no ties to applied software engineering. I.e. nothing like the real world.
The worst is that none of the youger students realised they were being screwed over and getting very little value for their money. Perhaps one reason why these evaluation forms have such high scores given on them. If you haven't had a job and haven't lived outside academia yet there is nothing to compare it to. It tends to also fall into confirmation bias (hey it's a top UK university, it must be worth it afterall! Look how much they ask for).
By the end of the year I couldn't wait to get the hell out. One of the other mature student sumed it quite well: "I will never send my children here."
Keep in mind that the guy had just over a decade of software engineering experience in the industry and was doing this for fun.
In the end universities are not teaching institutions. The lecturers's primary job is research and their priorities match that. Lectures tend to be the most time efficient teaching format for the ones giving them but, on their own, are not for the consumer.
To those contemplating university for CS: Do the BSc. Get your algo/datastructure chops and learn the basic theory. It is interesting. Don't get discouraged by the subject just because it is taught badly.
Avoid the MSc unless you want to do a phd and go for an academic carrer. You are better off using that year and the money to learn more on your own and get into colaborative projects (open source) on top of some personal ones. Build up your portfolio. It will be cheaper and more interesting!2
Guys! I want to really master the MEAN stack, I'm subscribed to code school and they seem to offer a great path for that.
It's rather a question. I am thinking of changing my Linux distro from Lubuntu to Arch Linux or Gentoo.
My main reason is that I want to achieve customizability and the freedom that Linux offer and also build my distro from ground up.
Second reason is that I want to switch a little bit I am using Lubuntu for 2-3 years and is worked great for me. Especially because I have an older laptop (Asus K53E) and windows 7 worked really slow on it. But with this distro, everything works much faster and has all features and tools for programming that I need despite being minimalistic.
I have also used other distros before this one. These are some of them that I can remember Ubuntu, Xubuntu, Mint, Bodhi Linux.
I would say for myself that I am quite familiar with terminal and I also wrote some bash scripts on complexity level like these: https://github.com/RokKos/..., https://github.com/RokKos/...
But my main concern is that would fail to install any of this two distros or that I would damage my computer beyond repair...
So my main questions are:
What are you experience with this two distros?
Did you have any troubles installing and setting up distro?
What is overall experience with this two distros?
Was is worth to switch to any of these two?
And you could also share what distro you are using and maybe some rants that occur using them.14
Ok, about to graduate as a system developer.
I wan't to become a great developer first and later on in my career switch focus more into scrum master -> product owner.
What should I think about when choosing my first job?1