Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "language war"
-
I'm drunk and I'll probably regret this, but here's a drunken rank of things I've learned as an engineer for the past 10 years.
The best way I've advanced my career is by changing companies.
Technology stacks don't really matter because there are like 15 basic patterns of software engineering in my field that apply. I work in data so it's not going to be the same as webdev or embedded. But all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret overit.
There's a reason why people recommend job hunting. If I'm unsatisfied at a job, it's probably time to move on.
I've made some good, lifelong friends at companies I've worked with. I don't need to make that a requirement of every place I work. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
If I'm awaken at 2am from being on-call for more than once per quarter, then something is seriously wrong and I will either fix it or quit.
pour another glass
Qualities of a good manager share a lot of qualities of a good engineer.
When I first started, I was enamored with technology and programming and computer science. I'm over it.
Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
The most underrated skill to learn as an engineer is how to document. Fuck, someone please teach me how to write good documentation. Seriously, if there's any recommendations, I'd seriously pay for a course (like probably a lot of money, maybe 1k for a course if it guaranteed that I could write good docs.)
Related to above, writing good proposals for changes is a great skill.
Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter... except one. See below.
The older I get, the more I appreciate dynamic languages. Fuck, I said it. Fight me.
If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
I don't know why full stack webdevs are paid so poorly. No really, they should be paid like half a mil a year just base salary. Fuck they have to understand both front end AND back end AND how different browsers work AND networking AND databases AND caching AND differences between web and mobile AND omg what the fuck there's another framework out there that companies want to use? Seriously, why are webdevs paid so little.
We should hire more interns, they're awesome. Those energetic little fucks with their ideas. Even better when they can question or criticize something. I love interns.
sip
Don't meet your heroes. I paid 5k to take a course by one of my heroes. He's a brilliant man, but at the end of it I realized that he's making it up as he goes along like the rest of us.
Tech stack matters. OK I just said tech stack doesn't matter, but hear me out. If you hear Python dev vs C++ dev, you think very different things, right? That's because certain tools are really good at certain jobs. If you're not sure what you want to do, just do Java. It's a shitty programming language that's good at almost everything.
The greatest programming language ever is lisp. I should learn lisp.
For beginners, the most lucrative programming language to learn is SQL. Fuck all other languages. If you know SQL and nothing else, you can make bank. Payroll specialtist? Maybe 50k. Payroll specialist who knows SQL? 90k. Average joe with organizational skills at big corp? $40k. Average joe with organization skills AND sql? Call yourself a PM and earn $150k.
Tests are important but TDD is a damn cult.
Cushy government jobs are not what they are cracked up to be, at least for early to mid-career engineers. Sure, $120k + bennies + pension sound great, but you'll be selling your soul to work on esoteric proprietary technology. Much respect to government workers but seriously there's a reason why the median age for engineers at those places is 50+. Advice does not apply to government contractors.
Third party recruiters are leeches. However, if you find a good one, seriously develop a good relationship with them. They can help bootstrap your career. How do you know if you have a good one? If they've been a third party recruiter for more than 3 years, they're probably bad. The good ones typically become recruiters are large companies.
Options are worthless or can make you a millionaire. They're probably worthless unless the headcount of engineering is more than 100. Then maybe they are worth something within this decade.
Work from home is the tits. But lack of whiteboarding sucks.39 -
why are we having a flame war on best programming language! it is personal choice and everything has its own purpose and importance. as a dev we should respect that14
-
They say, MATHS is a universal language,
They say, WAR is a universal language,
They say, LOVE is a universal language,
They say, SEX is a universal language,
.
.
I say C is the universal Language!!!9 -
STOP SHITTING ON PROGRAMMING LANGUAGES.
Now, I'm not talking to the people that don't take it too serious, but rather to people that think their language is superior and others inferior. Why shit on PHP? A lot of stuff is build with this, including devRant. For me, I'd love to learn any languages that has a proper use for me. (With this sentence I'm excluding all exoteric languages, because they are useless) If anyone says, Python is awesome as fuck, yeah, I FUCKING AGREE. Anyone telling me anything is crap, I disagree. If it's that terrible, how do you know about it? If it was never used ever in a project, how can you know its terrible? You can't. Unless you coded that thing yourself.
Next time don't waste your time on shit like that. I AM ALSO LOOKING AT THE HOLY WAR APPLE VS MICROSOFT VS LINUX
STOP WASTING YOUR TIME WITH SHIT LIKE THIS.18 -
I have got a new director at work. My previous director had to retire already, the man was already feeling it and he had been on the institution for more than 35 years....I am 30, so this tells you how much the man has been there.
This new dude.....has the presence of a Caterprie (Pokemon) or an Oompa Loompa. In contrast, the previous director felt like a 4 star General (never been in the presence of a 5 star since those occurrences are world war rare) but I had respected that man so much and loved working with him. I really did loved my boss, he was stern and professional, but kind and friendly to his staff, fiercely protective, no one took advantage of I.T while he was there, he would literally fight for us and took our word before anything else. The man was, well, a true man. A true leader.
He took a chance in putting me as the head of my department, but he had faith in me, and coached me and trained me as much as he could. Had the requirement for his position not been a masters he himself told me that he would have loved to make me his successor, even when I would constantly tell him that I was scared shitless of the work he did and the amount of things he did for the institution, to me this is a very laaaaaaaaarge cowboy hat to fill (this is Texas, he wore a hat, the saying is normally "shoes to fill", but fuck it)
This new guys looks away when the other managers are speaking to him. He constantly interrupts us. He constantly tells us about how the other institution in which he was (rival might I add) does X or Y, its fucking annoying to the point that me and the other managers have a drinking game, for every time he references his old institution we drink one beer over the weekend. It is Saturday night and I am 36 in in total (this is my favorite part of it tho) and it is just annoying.
His train of thought makes no sense to me:
"This application, where did you buy it? we tried purchasing one on Y when I was still there but found none"
Me: "Well, since it was a new government mandate and had nowhere to go we had to develop it in house"
Him: "We had tried to purchase what you guys had but found no place that sold it, so why didn't you try purchasing it?"
Me:.....well, because it was brand new, purchase it from where? We also don't like dealing with vendors that manage these sorts of things because every new requirement takes them weeks to produce on very high budgets, historically, my department has only had maintenance fees for the software that we have and even those applications crap themselves all the time and they take weeks to answer back to us.
Him: So you decided to develop it in house instead? we would never do that! back at y we purchased everything our engineers never really developed anything!
Me: Well then, what is the purpose of having engineers if they are not going to actually develop an application?
Him: IF there is something out there that is better then why should you reinvent the wheel?
Me: For this one I did not reinvent the wheel, I am not talking about creating a programming language from scratch, but how does custom solutions that specifically feed the needs of the institution to be produced otherwise? The department has developers for a reason, because they have very specific needs in here that can only come from a team of developers that are in house satisfying those needs.
Him: Well our engineers never had to do that. Sure projects sometimes had to put on holds because the vendor was busy, but such is the nature of development
Me: No it is not, the nature of development is to create things, it is one thing for my team to go through bugs and software considerations, it is another for me to not provide a service because some random company is taking two weeks on a $300 dllr an hour contract to put a simple checkbox on a form. If a project fails the board is not going to care that some vendor is not doing their job, they are just going to blame me, if that is the case then I would much rather the blame be actually mine than some sucky third party "developer" also, your engineers where not even engineers, they were people with a degree that purchased things, that's it, please do not compare them to my guys or refer them as engineers in front of me, they are not.
Him: Well, maybe.
MAYBE?!! motherfucker I did not kill myself learning the ins and outs of architecture and software engineering on my own time after my fucking bachelors in C.S for your codeless background ass to tell me MAYBE. My word IS the fucking WORD here, not yours. Fuck me I really dislike this dude's management practices.
The shitty part? He is not a bad person, he is not a bad dude that is out to get us, just a simple minded moron with no place as a leader.
I know leaders, I know what a leader is, this is not one.10 -
Favorite/most hated language? (I love a good flame war)
Why did you quit your previous job / Moment you've considered quitting your current job?
Why do you think Linux is so much better than OSX? (Ahh yes I feed on apple flavored hipster tears)
What side project are you currently working on?
If you had the best teams and unlimited funds, to be used only on a serious project using both Blockchain, IoT and AI, what would you create?
If you forgot how to code, what other career would you pursue?
What is your "I was so busy wondering if I could, that I forgot whether I should" concept/idea/project?
How many chicken eggs would fit inside the moon if it was hollow? (I like retarded interview questions)
If you started a startup, what unique perk would you offer your developer employees?
Do you under- or overengineer?
Most unnecessary feature you ever had to create?
Most necessary feature your boss/client denied to approve?15 -
FOR THE LOVE OF CHRISTMAS, LET'S STOP THE LANGUAGE WAR.
JUST FOR TODAY AND TOMORROW, WE CAN DO IT.6 -
New developers. Tip: There is no silver bullet.
If you like Python, please understand GIL's behavior before making a system that handles thousands of requests.
If you like Java, know that "Write once, run anywhere" is a fallacy. Even application servers don't like the same WAR.
If you like PHP, understand the life cycle of a request before connecting to the database from all corners.
If you like C#, don't make it a small command-line application that will be used on FreeBSD.
If you like C, meet valgrind.
If you like C++, templates are cool, but don't overdo it. And take the opportunity to meet valgrind.
Never use the same tool to do everything. Elect the language and framework for the given need with rationality.
Every time I see a "Java Man", a "C++ Chad" or anything like that, it comes to mind that if he were a carpenter, he would be tightening screws with hammers.
Every lock-in is bad.11 -
I don't want to trash-talk anyone's favorite programming language - after all, I get quite pissed if anyone rants about my favorite language, too! I'm not saying that VB .NET is a bad language. It really has its strengths, even more so for beginner devs. But is this guy serious?
https://red-gate.com/simple-talk/...
I don't even particularly care for C# - mostly because I don't like Pascal Case and it's a Microsoft Original and I don't want MY source code spying on ME... But still... every single one of the points that guy tries to make is either IDE-specific, not a big deal or even an advantage in my opinion!
What bothers me the most, however, is the way he subtly tries to force his own opinion upon his readers. "It doesn’t matter if you disagree with everything else in this article: case-sensitivity alone is sufficient reason to ditch C#!" - quote end!
Real sneaky fella.11 -
So I'm a new CS student diving head first into programming. I've already made my choice in terms of what language to learn and indent style (bracket gets its own line 😁), but I'm having trouble choosing between vim and emacs...
Without this devolving into a flame war, could we have a discussion on the pros and cons of each editor? I'm curious to see what other developers use and their experiences with each of these editors.28 -
Reading a paper on DBMS architectures, and I quote:
"In the seventies, the scientific discussion
in the database (DB) area was dominated
by heavy arguments concerning the most
suitable data model, sometimes called a
religious war."
... and here I thought language argument was a religious war. :/6 -
devRant should add a new feature to create polls
e.g. 1: What OS do you prefer?
- Mac
- Linux
- Windows
e.g. 2: Which programming language do you prefer for web dev, mobile dev, etc.
- Java
- PHP
...
I bet after a while a cyber war would commence. And that would be devRant's fault because it gave developers a reason to hate each other.
So devRant please disregard my request for the new feature.
Narrator: And then he laughed sardonically.4 -
Last rant was about games and graphics cards (admittedly not received too well), time for a rant about game development houses.. especially you EA.
So yesterday a friend of mine showed me in one of our Telegram chats that he'd modified some cheats in an old FPS game by editing these scripts (not Lua for some reason) that the game used as a.. configuration language I guess? He called the result a tank cemetery 🙃
Honestly the game looked a lot like Medal of Honor to stoned me at the time, so I figured, well why not fire up that old nx7010 I had laying around for so long, get a new Debian installation on that and rip the Medal of Honor: Allied Assault war chest that I still had, and play it on one of my more modern laptops? Those CD's are now very old anyway, maybe time to archive those before they rot away.
So I installed Debian on it again, looked up how to rip CD's from the command line, and it seemed that dd could do it - just give /dev/cdrom as the input file, and wherever you want to store your copy as the output file. Brilliant! Except.. uh, yeah. It wasn't that easy. So after checking the CD and finding that it was still pristine, and seeing another CD in that war chest fail just the same, I tried burning and then ripping a copy of Debian onto another CD.. checksummed them and yes, it ripped just fine, bit for bit equal. So what the fuck EA, why is your game such a special snowflake that it's apparently too difficult to even spin up the drive to be copied?
So I looked around on plebbit and found this: https://reddit.com/r/DataHoarder/... - the top comment of that post shattered all my hopes for this disc to be possible to rip. Turns out that DRM schemes intentionally screw up the protocols that make up a functioning disc, and detecting those fuck-ups is part of the actual DRM.
"I also remember some forms of DRM will even include disc mastering errors/physical corruption on the actual disc and use those as a sort of fingerprint for the DRM. The copied ISO has to include them at the exact same place in the ISO as on the IRL disc and the ISO emulator has to emulate the disc drive read errors they cause."
So yeah. Never mind that I already own this goddamn game, and that it's allowed by law to make one copy for personal use, AND that intentionally breaking something is very shady indeed.. apparently I don't really own this game after all. So I went onto the almighty search engines, and instantly found a copy of this game for download. You know EA.. I wanted to play nice. You didn't let me. Still wondering why people do piracy now? Might take your top suits that suggested these fucked up DRM schemes another decade to figure out maybe.. even given the obvious now.
But hey I wouldn't even care that much if the medium these games are stored on wouldn't be so volatile (remember these discs are now close to 20 years old, and data rot sets in after 30 years or so). You company decided to publish these on CD. We've had cartridges in many forms before, those are pretty much indestructible and inherently near impossible to duplicate. And why would you want to? But CD is what you chose because you company were too cheap to go to China, get someone to make some plastic molds and put your board and a memory chip in that. Oh and don't even get me started on the working conditions for game devs.. EA and co, aren't you ashamed of yourselves? No wonder that people hate game development houses so much.
Yay, almost finished downloading that copy of Medal of Honor! Whatever you say EA.. I've done everything I could to do it legally. You are the ones who fucked it up.9 -
Assuming you're not a beginner , which language would you learn right now (or) which language would you prefer to stick with provided you already know it.
*The assumption made is to prevent comments on python cause that's usually beginners choice
Personally I want to hone my skills in rust.10 -
SHORT: BEST 1st WEB DEV LANGUAGE? READ FOR CONTEXT
So my gf became even more of the girl of my dreams last night by confiding to me she wanted to learn web development like actually learn it and do freelance work, this evolved from just wanting to start a blog. (We have a dream of being digital nomads and traveling the world together)
Now I am but a simple innocent C++ dev not trying to start a flame war buuuutttt... What web language would be most beneficial for her to learn as her first main language? And Why?
She's done some simple html is the past (not myspace), she took a web design class in high school years ago. Thank you for all the help! 🖒10 -
It's not my intention to start a web technology war so be nice do not do that 😁
Short Info: I'm "desktop programmer" (if that word exists) in either C # or Java 😎
question: I would like to create my own website, just simple to start with and maybe expand it later with eg. Arduino temperature meter
I have a look at 2 programming languages that I can build it in, Js or PHP. I just do not know which one to choose, I'm probably the most to Js, but what are the pros and cons of these 2 and / or is there a completely different programming language I have to take a look at?16 -
I hate all of the OS/langs circlejerks. I think anyone participating in them (in a serious manner) needs to fucking grow up and learn the concept of tools. TL;DR for any OS/lang discussion: Use the right tools for the right job.3
-
Flame war:
Best functional language + eco system for web dev -
F#, Haskell, Scala, elixir, other?
Same for scientific/mathematical simulations?9 -
Every ten years, a new social nexus, from Usenet to Reddit. Every day, a flame war. Every year, a great leader that wins flame wars, convinces people to follow them. The question is, what happens next? What do you preach to the gullible masses you won over?
Every single time it gets to politics, and then, to philosophy. Yet, there are no large strides in sight to world peace.
You've seen that meme where everything is just applied math. Well, math is applied philosophy, and philosophy is a product of misunderstanding the language.
In the end, the flame war you won never mattered. Archived threads, Wayback Machine, inactive Usenet mirrors. Acres upon acres of human thought, passionately expressed in computer text, roamed by no one but web crawlers. Give them three days, and they'll forget what you taught them.
WWI had shown us that we couldn't improve the masses with art and education. There is no vaccine against stupidity.
Life on Earth is hell. People are hell. Living among people is hell. If your life isn't hell, you're fortunate enough to be paying criminals that are stronger than other criminals around them, for protection.
Only the habit of systematically denying yourself pleasures your inner animal wants, plus a healthy dose of doubt, can make you human. Without restraint, a man is merely a greedy beast.5 -
once I heard a joke that a nerd programmer want to have sex with his so called gf, she said if u could post something online and get 10K reply then she will do it.
guess what that dude did?
he post "PHP is the best language ever" on a dev forum
he got 10K reply in 10min, the gf said ok so be it let's do it.
the guy said could you wait, I really think PHP is the best language ever I need to persuade those assholes on this
at last he win the war but lost the sex1 -
Objective-C syntax is more readable than Swift.
The verbose naming conversations feel natural in Objective-C, but in Swift they look rather nasty to me.
Also Swift syntax feels inconsistent in many parts of the language, which forces you to memorize when you can and when you can't use a certain feature (i.e where, case).
Am I the only one that thinks Objective-C looks a lot cleaner than Swift code?
Note: This is an opinion, not trying to start a war. Just curious if I'm alone on this.9 -
Okay. Here's the ONLY two scenarios where automated testing is justified:
- An outsourcing company who is given the task of bug elimination in legacy code with a really short timeframe. Then yes, writing tests is like waging war on bugs, securing more and more land inch after inch.
- A company located in an area where hiring ten junior developers is cheaper than hiring one principal developer. Then yes, the business advantage is very real.
That's it. That's the only two scenarios where automated testing is justified. Other such scenarios doesn't exist.
Why? Because any robust testing system (not just "adding some tests here and there") is a _declarative_ one. On top of already being declarative (opposed to the imperative environment where the actual code exists), if you go further and implement TDD, your tests suddenly begins to describe your domain area, turning into a declarative DSL.
Such transformations are inevitable. You can't catch bugs in the first place if your tests are ignorant of entities your code is working with.
That being said, any TDD-driven project consists of two things:
- Imperative code that implements business logic
- Declarative DSL made of automated tests that also describes the same business logic
Can't you see that this system is _wet_? The tests set alone in a TDD-driven project are enough to trivially derive the actual, complete code from it.
It's almost like it's easier to just write in a declarative language in the first place, in the same way tests are written in TDD project, and scrap the imperative part altogether.
In imperative languages, absence of errors can be mathematically guaranteed. In imperative languages, the best performance (e.g. the lowest algorithmic complexity) can also be mathematically guaranteed. There is a perfectly real point after which Haskell rips C apart in terms of performance, and that point happens earlier on than you think.
If you transitioned from a junior who doesn't get why tests are needed to a competent engineer who sees value in TDD, that's amazing. But like with any professional development, it's better to remember that it's always possible to go further. After the two milestones I described, the third exists — the complete shift into the declarative world.
For a human brain, it's natural to blindly and aggressively reject whatever information leads to the need of exiting the comfort zone. Hence the usual shitstorm that happens every time I say something about automated testing. I understand you, and more than that, I forgive you.
The only advice I would allow myself to give you is just for fun, on a weekend, open a tutorial to a language you never tried before, and spend 20 minutes messing around with it. Maybe you'll laugh at me, but that's the exact way I got from earning $200 to earning $3500 back when I was hired as a CTO for the first time.
Good luck!6 -
Quick question..
INFO:
Im attending Computer Science Study's im at the end of 1. Semester. We'r going to cover app development in 4th semester, but i cant wait that long, i want to use my spare time starting to build apps to get ahead of studys.
Im currently pretty decent in Java, so i want the app based on java language, and we've used scenebuilder for our desktop GUI's so far with FXML..
QUESTION : What do you use to develop java based ios/android apps - software,languages, etc.
Dont want to start a "this is better than that " war, just looking for a good entrypoint to java app development.
THANKS 👍5