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 - "software languages"
-
Tips for all the programmers out there:
- A programmer is not a PC repair man, just no one seems to remember about that
- Programming is thinking, not typing.
Counting starts from zero, not one.
- Even after completing a degree and courses and working on IT projects, learning never stops. If you want to stay competitive you should also work on personal projects that force you to use languages and software you never work with on the job.
- You don’t need serious math skills to be a developer. However, you’ll need basic algebra, logic, strong problem-solving skills, and most of all, patience.
- You don’t need a degree to be a developer - programming is like almost any profession: if you’re good at it, people will pay you for your skills, regardless of how you got there.
- Sleeping with a problem, can actually solve it.14 -
Linux sucks.
Now now, chill. I'm using it as my main OS for a few years now. I know what I'm talking and this title is a bit click-baity, but this just has to go out there:
1. It's usable as a Windows replacement just fine - FALSE. XFCE4 is years old and buggy as hell especially on multi-monitor set-up, Gnome3 gets stuck more often than my Windows 98 machine used to, KDE is like a rich kid on meth. Plug in Bluetooth headphones? Well no, sorry, you have to research that online, since you'll probably need to install some packages for it to work. Did I say "work"? Well no, because after more research you realize that Debian on Gnome3 on gdm3 launches pulseaudio on its own, so you have 2 instances of pulseaudio, and one of them is stealing your headphones sometimes and you either have no sound or shitty sound. How do I know that you ask? The same way I know everything else - every time you try to do something new on any Linux, it involves a ton of research. Exciting research, don't get me wrong, but at this point it looks more like a toy than a reliable desktop computer operating system.
2. And why am I using pulseaudio? Why not alsa? years ago people were discussing on forums that pulseaudio is old and dead, yet here we are with new LTS release of Ubuntu still shining with Pulseaudio. How about several different service management systems being deprecated by new ones, each having different configurations and calling methods? Apparently systemd is old and lame now. It's a mix of 10 year old software that works badly, with a 5 year old replacement that works worse, somehow trying to live under the same roof. Does it work? Ask my headphones who sound like a fucking dial-up modem.
3. Let's talk about displays, shall we? xorg is old and deprecated, right? We got Wayland that's mostly stable. Don't know what that is? That's just basic knowledge for Linux. And when you try to install network-manager, it also tries to install Mir toolkits. Because why the fuck not install 3 display managers when you want a network manager, of which one is old and dying, one is young and stupid, and another is an infant that died of cancer?
4. Want to integrate with Google Drive? Yeah, there's a tool that mounts the drive as a local directory. Yeah only for Ubuntu. Want it on Debian? You need to compile it. Oh wait, it's on Ocaml, because fuck mainstream languages, we're hipsters. How do you compile Ocaml? Well you need to have Ocaml on your system, dummy. How do you do that? Well you need to compile Ocaml. Ok, how do I do that? Well, git clone, download and install some dependencies, configure, make... oh sorry, you're using libssl1.0.2g when you need libssl1.0.1f, nope, sorry, won't work. Want to install libssl1.0.1f? Why? You already have the "g", stupid! Want to remove libssl1.0.2g? Bye-bye literally everything that you have on your PC. But at least you got the "f". Does it work now? Well no, because you need libssl1.0.2g for another dependency to work.
And all I ever wanted was to get a fucking document from google drive (not nudes, I promise).
5. Want to watch a movie? Let me tear that screen in half and make the bottom half late by a couple of frames, because who needs vertical sync, right? Oh you do? Well install the native drivers maybe. Oh you have? Welcome to eternal Boot to Recovery mode, motherfucka!
---------------------------------
Yeah, most of the times things work just fine. But the reason I know what those things are and how they work is not curiosity. The reason that I know the inner workings of Linux much better than the inner workings of Windows, is because in those few years that I've been using it full time, it has caused me 10 times more headache than I have ever experienced with other systems. And it's not the usual annoyances like "OMG it rebooted when I didn't ask it to", but more like "Oh, it won't work and I need 2 days to find out why" kind of stuff, because even if you experience the same thing again, it's always caused by some new shit and the old solution won't work any more.
I still love it, and will continue to use it. I don't know why really. Maybe because I'm not afraid of fucking it up any more? Maybe because I can do what I want in it and recovering will be easier than on Windows?
It's a toy for me, after all these years. And I also use it for professional reasons.
But whenever someone presents it as a better alternative to Windows, I just want to puke.51 -
I am an indie game developer and I lead a team of 5 trusted individuals. After our latest release, we bought a larger office and decided to expand our team so that we could implement more features in our games and release it in a desirable time period. So I asked everyone to look for individuals that they would like to hire for their respective departments. When the whole list was prepared, I sent out a bunch of job offers for a "training trial period". The idea was that everyone would teach the newbies in their department about how we do stuff and then after a month select those who seem to be the best. Our original team was
-Two coders
-One sound guy(because musician is too mainstream)
-Two artists
I did coding, concept art(and character drawings) and story design, So, I decided to be a "coding mentor"(?).
We planned to recruit
-Two coders
-One sound guy
-One artist (two if we encountered a great artstyle)
When the day finally arrived I decided to hide the fact that I am the founder and decided that there would be a phantom boss so that they wouldn't get stressed or try flattery.
So out of 7, 5 people people came for the "coding trial session". There were 3 guys and 2 girls. My teammate and I started by giving them a brief introduction to the working of our engine and then gave them a few exercises to help them understand it better. Fast forward a few days, and we were teaching them about how we implement multiple languages in our games using Excel. The original text in English is written in the first column and we then send it to translators so that they can easily compare and translate the content side by side such that a column is reserved for each language. We then break it down and convert the whole thing into an engine friendly CSV kind of format. When we concluded, we asked them if they had any questions. So there was this smartass, who could not get over the fact that we were using Excel. The conversation went like this:(almost word to word)
Smartass: "Why would you even use that primitive software? How stupid is that? Why don't you get some skills before teaching us about your shit logic?"
Me:*triggered* "Oh yeah? Well that's how we do stuff here. If you don't like it, you can simply leave."
Smartass: "You don't know who I am, do you? I am friends with the boss of this company. If I wanted I could have all of you fired at whim."
Me:"Oh, is that right?"
Smartass:"Damn right it is. Now that you know who I am, you better treat me with some respect."
Me: "What if I told you that I am not just a coder?"
Smartass:"Considering your lack of skills, I assume that you are also a janitor? What was he thinking? Hiring people like you, he must have been desperate."
Me:"What if I told you that I am the boss?"
Smartass:"Hah! You wish you were."*looks towards my teammate while pointing a thumb at me* "Calling himself the boss, who does he think he is?"
Teammate:*looks away*.
Smartass:*glances back and forth between me and my teammate while looking confused* *realizes* *starts sweating profusely* *looks at me with horror*
Me:"Ha ha ha hah, get out"
Smartass:*stands dumbfounded*
Me:"I said, get out"
Smartass:*gathers his stuff and leaves the room*
Me: "Alright, any questions?"*Smiling angrily*
Newcomers: *shake heads furiously*
Me:"Good"
For the rest of the day nobody tried to bother me. I decided to stop posing as an employee and teaching the newcomers so that I could secretly observe all sessions that took place from now on for events like these. That guy never came back. The good news however, is that the art and music training was going pretty well.
What really intrigues me though is that why do I keep getting caught with these annoying people? It's like I am working in customer support or something.16 -
Software engineering is doomed.
The next generation of developers is going to suck as fuck
I've come across a lot of situation that made me think this way.
The most notable examples are right here on devrant.
I've seen a shit ton of rants blaming languages for "bugs" when in fact those "bugs" wouldn't have happened if those fuckers would have read the specifications of said languages.
This new generation doesn't read, when they've got a problem they just fucking go to Google for answers, they don't bother reading specifications, language books, rfc, etc, they don't bother reading where the true source of information are. The documentation ? What's that ? Let's go to stackoverflow first, let's think second.
Same back in school I've seen people in the highest grades that couldn't fucking decompress a tar archive.
In the coming decades we will loose the high skilled people, the people that made the software world as it is today we will be left with fuckers only able to blame things for stuff they don't understand.
This is my first true rant. This is me being pissed off.27 -
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.37 -
As a developer in Germany, I don't understand why anything related to development like IDEs, git clients and source code documentation should be localized/translated.
Code is written in english, configuration files too. Any technology, any command name in a terminal, every name of a tool or code library, every keyword in a programming language is written in english. English is the language of every developer. And English is simply a required skill for a developer.
Yet almost everything nowadays is translated to many other languages, espacially MS products. That makes development harder for me.
My visual studio menus are a mess of random german/english entries due to 3rd party extensions.
My git client, "source tree" uses wierd translations of the words "push" and "commit". These commands are git features! They should not be translated!
Buttons and text labels in dev tools often cut the text off because they were designed for english and the translated text is bigger and does not fit anymore. Apparently no one is testing their software in translated mode.
And the worst of all: translated fucking exception and error massages! Good luck searching for them online.
Apple does one thing damn right. They are keeping all development related stuff english (IDE, documentation). Not wasting money on translations which no developer needs.19 -
Fuck the memes.
Fuck the framework battles.
Fuck the language battles.
Fuck the titles.
Anybody who has been in this field long enough knows that it doesn't matter if your linus fucking torvalds, there is no human who has lived or ever will live that simultaneously understands, knows, and remembers how to implement, in multiple languages, the following:
- jest mocks for complex React components (partial mocks, full mocks, no mocks at all!)
- token cancellation for asynchronous Tasks in C#
- fullstack CRUD, REST, and websocket communication (throw in gRPC for bonus points)
- database query optimization, seeding, and design
- nginx routing, https redirection
- build automation with full test coverage and environment consideration
- docker container versioning, restoration, and cleanup
- internationalization on both the front AND backends
- secret storage, security audits
- package management, maintenence, and deprecation reviews
- integrating with dozens of APIs
- fucking how to center a div
and that's a _comically_ incomplete list; barely scratches the surface of the full range of what a dev can encounter in a given day of writing software
have many of us probably done one or even all of these at different times? surely.
but does that mean we are supposed to draw that up at a moment's notice some cookie-cutter solution like a fucking robot and spit out an answer on a fax sheet?
recruiters, if you read this site (perhaps only the good ones do anyway so its wasted oxygen), just know that whoever you hire its literally the luck of the draw of how well they perform during the interview. sure, perhaps some perform better, but you can never know how good someone is until they literally start working at your org, so... have fun with that.
Oh and I almost forgot, again for you recruiters, on top of that list which you probably won't ever understand for the entirety of your lives, you can also add writing documentation, backup scripts, and orchestrating / administrating fucking JIRA or actually any somewhat technical dashboard like a CMS or website, because once again, the devs are the only truly competent ones - and i don't even mean in a technical sense, i mean in a HUMAN sense of GETTING SHIT DONE IN GENERAL.
There's literally 2 types of people in the world: those who sit around drawing flow charts and talking on the phone all day, and those WHO LITERALLY FUCKING BUILD THE WORLD
why don't i just run the whole fucking company at this point? you guys are "celebrating" that you made literally $5 dollars from a single customer and i'm just sitting here coding 12 hours a day like all is fine and well
i'm so ANGRY its always the same no matter where i go, non-technical people have just no clue, even when you implore them how long things take, they just nod and smile and say "we'll do it the MVP way". sure, fine, you can do that like 2 or 3 times, but not for 6 fucking months until you have a stack of "MVPs" that come toppling down like the garbage they are.
How do expect to keep the "momentum" of your customers and sales (I hope you can hear the hatred of each of these market words as I type them) if the entire system is glued together with ducktape because YOU wanted to expedite the feature by doing it the EASY way instead of the RIGHT way. god, just forget it, nobody is going to listen anyway, its like the 5th time a row in my life
we NEED tests!
we NEED to know our code coverage!
we NEED to design our system to handle large amounts of traffic!
we NEED detailed logging!
we NEED to start building an exception database!
BILBO BAGGINS! I'm not trying to hurt you! I'm trying to help you!
Don't really know what this rant was, I'm just raging and all over the place at the universe. I'm going to bed.20 -
At a friend's party, I met one of the guys I've known from High school, and talk about what we've become:
Him: ...so yeah, now I study CS, I code some C, I dislike Java, blablablablabla I'm coding some OS and embedded software, blablablabla, and you, what do you code in?
Me: Oh, I learned everything I know by myself, still learning, and I'm mostly doing some PHP and Javascript. Doing websites and apps is cool.
Him: but those aren't programming languages? I mean, you can't manage memory, and blablablabla-
Me: Ó_Õ * Quickly dashed my ass off to talk with some ladies and boozed myself to forget what I just heard *30 -
My dream is to build a shopping cart for web stores that doesn't fucking suck.
Seriously Bigcommerce, Shopify, Magneto, etc. All of you can eat bag of dicks and burn in hell for ever.
I don't care what languages you fancy, all of their stacks are a pile of shit, monkey patched together with popsicle sticks and duct tape and it all falls apart with high concurrency.
All their greasy haired sales teams will throw all manners of horse shit at the poor bastards who are trying to run a business so they can pad their commission checks... "High availability", "scalable", "reliable", "Increased conversation rate"... Lying dick fucks, all of them! I am calling them the fuck out on that snake oil they're all peddling.
The only thing worse than their shit APIs is the shit documentation and the shit support that accompanies them.
Support of these platforms are pretty much all the same, sure mayhaps one has 24*7 phone support and another closes at 9 or some shit like that, either way the only people they put on the phone are monkeys that will freeze up and say "I'm not a developer so I can't help you"... Guess what, "Eric"! I didn't ask if you're a fucking dev! I'm calling because one of your devs fucked up and I need you to tell him to unfuck it so I can get the fuck on with my day!
Their app/plugin market places are shameful to say the least. The overall quality of software is somewhat dire and it's mostly dominated by oversees developers who speak English about as well as the language they're developing with (not very well usually).
I could go on until I hit the character limit but I'm gonna end it here by saying, all shopping carts suck and they should burn for eternity in the depths of hell so that a savior can free all developers from this agonizing torment.9 -
I just quit my job!
The company I worked for is a small company founded in Jan of this year and I was there since the early days but wasn't a founder nor a partner.
It was me who decided on which tech stack we should use, which languages, what servers to use, best practices and almost anything related to development. I was the lead developer and project manager for the biggest project they had.
But they decided that I don't deserve to be a partner. I was making more than 50,000 SDG per month for the company but only paid 6,000. The worst thing is that the partners don't know shit about software development. They have no vision for where should the company be in the future.
I just had enough. I already had my own software dev business before joining them, and it was successful.
I am going back to building my own company with my own vision.
I know I made the right decision, but it still hurts leaving a company after u made it what it is today. It is like your own baby and you are abandoning it.
Hopefully, it is for the best.9 -
A lite story about how i was hired at 16 years old.
Me at 11. Modifying HTML templates to create a sign up page for a game. Me at 14. Created some worthless websites in the past (at a training), barely knowing the structure of HTML.
Me at 15. Made my first website for a customer (using WordPress for the first time, didn't know how to use it before). The website was selling apartments, it was looking very good and went on the first place on SEO. Got my first money (100E).
Me at 16. Made some other WordPress websites for other customers (one of them still haven't paid, the website was made way back in 2015), so i shut down the website and replaced it with a text saying "This website is currently down until the customers pays the developer".
Me still at 16. A friend of my mom sent my CV to multiple companies, to work as a intern to learn more, and one of them accepted me for a interview (a well known and one of the best company with 30~ people)
Went to the interview, asked me about what i realized, what i can do, about my knowledges in others languages etc (forgot to mention that i love the computers from young age, so i was very good in them, specially at the age of 11), so they were happy about it and asked called me for another interview with the boss. Went to it, the boss asked me some tricky questions, i answered them immediately, he was very surprised about my knowledge at that age and accepted me immediately. After working for 2 weeks, instead of hiring me as a intern for 4-6 months, they instead hired me as a normal person, as a front end developer, for an undefined date, making 250 E / Month (6 hours per day in summer)
Now, I'm in the 11 grade, working for them about 9 months, making 315 E / Month, working for 4 hours per day after school, the place is cool, my entire team (family) is very funny and very cool, and they asked me many times to help them with different problems they had and i fixed them immediately (they really didn't know some stuff which i knew). Worked on big projects and worked on some from scratch by myself and they were very happy about how it went.
TLDR: was talented in computers (software), I'm a fast learner, barely knew about making websites, hired as a front end developer at 16 yr.
Btw, I'm in love with DevRant, I'm feeling like home everytime i visit this community :').
P.S. Sorry for my bad English and the mistakes i made.
alert("Thanks for reading my first rant!");10 -
I don't understand why people tend to shit on certain languages.
I`ve seen my fair share of shit software written in a plethora of languages, and the problem was usually that the devs used the language/framework completely wrong.
Languages and frameworks are designed to solve problems, if you don`t use them in the correct way then you are to blame.
It is like sticking your dick in the exhaust pipe of a Volvo, and then writing a Medium post complaining about your charred dick and how all Volvo's suck. Yeah I'm talking about you PHP haters, all of you that shit on Java on a daily basis and you morons saying "python is slow"
Don't get me wrong, I send PHP shitposts/memes all day to my friends working with it. But if my code doesn't work, it is my fault and I own up to it.
With that said, I will blow my brains out before writing a single line more of PHP
Rant over10 -
Dear Programming Languages,
if you only support weakly typed constructs, I wish you a special place in hell.
Dear Fellow Developers,
if you use a language that allows strong typing with weak typing, the next time we will meet after I have to fix a shitty bug due to that I will play piano on your teeth, and a melody you won't like.
And yes, that means PHP as well. PHP allows for strict types since php7.
So. Just. Fucking. Use. It.
There are no excuses!
I don't care if you don't see the benefit or find it "annoying" and tedious to write it out. Use a decent editor and it will be mostly code-completion anyway.
I just don't want to fix your fuckups. And if your fuckup is due to a typing issue that "slipped" by, you are part of the problem.
If you write software, it should be clear what type each and every variable or object has.
There are no excuses but your laziness.
If you want to be ambiguous, try poetry.23 -
Well, it all started off with hardware-level programming involving jumpers and stuff like that... Then came Assembly, which was good.. B, C compilers. Finally came the interpreted languages, and that's where in my opinion the abstraction should've ended. But no, we needed more frameworks, more libraries, even more abstraction! Where does it end? As it seems to be going, I guess that users will have kid toys - no iToys! - for electronics and we'll be programming on with bloated Scratch GUI's. Nothing against Scratch, but that shit ain't proper programming anymore. God I can't wait for the future.
ABSTRACT ALL THE THINGS!!!
Oh and not to mention that all software will be governed in political correctness by some Alex SJW AI shit that became sentient. Not a single programming term will be non-offensive anymore, no matter how hard you try to not offend anyone, or God forbid - don't care about it because you just want to make something that's readable, usable and working!! Terms, UI names for buttons, heck even icons! REMOVE IT BECAUSE IT OFFENDS SOMEONE THAT I DON'T EVEN KNOW JACK SHIT ABOUT!!!18 -
Just before you, my fellow system programmer, scroll past this, let me say this:
🍬 The web is actiually simple. 🍬
Both HTML and CSS is declarative. It's all easy when you understand the concepts, learn how to be idiomatic and quit trying to do that imperative bullshit in languages that aren't imperative.
HTML is simple. You know the boilerplate: doctype, head, body, that's all. Just mark it up and do NOT look at it before you end, mark it up as it were article or something. The appearance is up to css.
CSS is simple. You may even forget bem or rscss, you're already a skilled software developer. Use common sense and your code-splitting and naming skills you gained reading The Code Complete or doing software development for years.
Forget mockups. Forget absolute positioning, forget setting width and height in pixels. Go to awwwards, find some inspiration. Draw some buttons and fields on paper with your good old pencil. Then go and write some css. Feel free to steal some shadows and transitions from codepen.
Read about 8-pixel grid system. Let every element push away from others by setting something like margin: 16px; and whoops! You've just got fully responsive and got great vertical rhythm without even using media queries!
Oh my god, do NEVER set width and height explicitly! Type something like button { width: 120px; } and bang! The entire web page is broken. Quit that shit. Let it resize as it should. It will resize itself to fit its contents.
HTML is by default ready for your template engine. That's how you receive data from server — as server-side rendered, plain old HTML page. On the other hand, the form element is the most axiomatic and simple way to send the data to server. That's how you send it — as plain old GET or POST that every webserver can handle.
All of there are true:
1. It's easy to get great 100% responsiveness without media queries.
2. It's easy to align items in row, it's just one line of css. Maybe two, if you still want elements to wrap, but want to use flexbox:
.parent {
display: flex;
flex-wrap: wrap;
}
3. HTML and CSS are fast by default.
4. You don't need mockups to achieve great visual experience. Mockups is imperative, web is declarative.
5. You may not even need JavaScript to make great website.
Go on, ask me a question about web! I'll ready to answer everything.21 -
I had been a "hobby" programmer for well over a decade, with my primary career being in repair or a "technician". I had taught myself dozens of languages because it was fun, but never really accomplished much.
I was laid off from my job as a technician and I found myself listless and without purpose. I started doing development again on random things to pass the time and I ended up volunteering as a developer for a game I had played for years.
At the same time I had an uncle who encouraged me to consider software as a career. These two things gave me the confidence to apply for a local software job I saw on Indeed.
They called me pretty quickly, and I was brutally honest. "No, I don't have a degree. I'm self-taught. I have no professional experience really."
I got a proficiency exam anyway and I took it - apparently doing well enough on it that the CTO called me a week later. We had a long talk and I finally asked him why he called me.
He told me that while a degree means something, the passion to learn this job means more to him. It was a month before I was offered the position, and I graciously accepted it.
We had a call about my compensation before starting. It was rather low, but we both agreed that my skill level was quite an unknown.
A year later and my pay was bumped up a sizable amount. My skills are defined now and growing rapidly as new challenges are sent my way. I went from a naive hobbyist to a professional in a short period of time.
I realized that I was always a professional. I had a desire to learn and a desire to do things the right way. I may not have known what to call things. I didn't know some of the design patterns I had used over the years were standards that had names and meaning.
I basically work two jobs now. My full-time job and also on the game that helped propel my career forward and gave me the confidence to reach for it.
As for my hobby? I turned to electronics and the maker community. It's a nice marriage with my programming skill set, and I never knew how rewarding a blinking LED would be. :)4 -
One day at a doctor who started a small conversation:
Doc: What is your job?
Me: I am a software developer, I write computer programs basically.
Doc: Interesting. How does it work?
Me: Oversimplified you have special languages to tell the computer what to do and then this is converted into a program you can start on your PC. The languages are a bit like basic english (thought of Pascal at this moment).
Doc: So then it is a pretty simple job.
Me thinking: OMFG yes that's why I studied it 6 years, because it's soo easy.
Me thinking at home: Next time tell them that you are a computer scientist and that it is applied mathematics basically. Maybe then they will get a clue of the complexity. 🤔14 -
For fucks sake, just because you don't know anything besides JS, you don't have to constantly complain how it's "so fucked up"!
Yeah there's a lot of frameworks. So what? Python has 50+ wsgi frameworks just for server-side apps, Linux has literary hundreds of desktop environments, C++ has over 30 actively-developed UI frameworks, and let's not even get started on CMSs or game engines. And each language comes with its own dependency management or two, NPM discourages static linking & bundling dependencies until the very end, while some others only recommend dynamically linking widely-available dependencies & always bundling the remaining ones.
Software development is constantly evolving, and for most time there's no right or wrong approach. And when one approach is chosen over another, there's a reason for that. Imagine you just found a perfect library for your use case, but some idiot decided to only offer minified code with bundled jQuery? Or a different idiot made it impossible to have multiple versions of a dependency on your system without resorting to one of various third-party hacks?
Every language has a ton of various frameworks & libraries that ultimately do the same thing, every language has a bunch of design choices you probably don't understand at first, and every language was made with a purpose and the fact that you're using it proves it achieved that.
Last but not least, all devs had to learn about quirks in various languages, and they're fucking tired when someone who barely knows a language tries to act smart going "ahaha how the fuck 0.1 + 0.2 isn't 0.3".10 -
Never thought I will be hired by Chinese software/hardware company located in NYC to code in languages I don't know so well. Instead of lying and saying I know everything about C, PHP and SQL, I said that I suck pretty much at everything, but I'm a quick learner and will study day and night to catch up with their practices. Now I see they have no regret about me, but I still suspect them in hiring me because there is another guy who is Russian too and we all communicate well. Our current squad is 17 Chinese, 2 Russians, 1 Americans. Guess what, I learn Mandarin quicker than PHP. Sometimes a small lie is OK, but sometimes honesty is better.3
-
“Don’t learn multiple languages at the same time”
Ignored that. Suddently I understood why he said that. Mixed both languages. In holiday rechecked it and it was ok.
Sometimes mistakes can lead to good things. After relearning I understood it much better.
“Don’t learn things by head” was another one. Because that’s useless. If you want to learn a language, try to understand it.
I fully agree with that. I started that way too learning what x did what y did, ... But after a few I found out this was inutile. Since then, I only have problems with Git
Another one. At release of Swift, my code was written in Obj-C. But I would like to adopt Swift. This was in my first year of iOS development, if I can even call it development. I used these things called “Converters”. But 3/4 was wrong and caused bugs. But the Issues in swift could handle that for me. After some time one told me “Stop doing that. Try to write it yourself.”
One of the last ones: “Try to contribute to open source software, instead of creating your own version of it. You won’t reinvent the wheel right? This could also be usefull for other users.”
Next: “If something doesn’t work the first time, don’t give up. Create Backups” As I did that multiple times and simply deleted the source files. By once I had a problem no iOS project worked. Didn’t found why. I was about to delete my Mac. Because of Apple’s WWDR certificate. Since then I started Git. Git is a new way of living.
Reaching the end: “We are developers. Not designers. We can’t do both. If a client asks for another design because they don’t like the current one tell them to hire one” - Remebers me one of my previous rants about the PDF “design”
Last one: “Clients suck. They will always complain. They need a new function. They don’t need that... And after that they wont bill ya for that. Because they think it’s no work.”
Sorry, forgot this one: “Always add backdoors. Many times clients wont pay and resell it or reuse it. With backdoors you can prohibit that.”
I think these are all things I loved they said to me. Probably forgot some. -
Hi,
I'm not a ranty person so I never actually thought I'd post anything here but here it goes.
From the beginning.
We use ancient technologies. PHP 5.2, Symfony 1.2 and a non RFC complient SOAP with NO documentation.
A year ago We've been thrown a new temporary project. An VOIP app for every OS.
That being iOS, Android, MAC, PC, Linux, Windows mobile. With a 3 month deadline. All that thrown at 4 PHP developers. The idea being that They'll take it, sign the delivery protocol, everyone happy. No more updates for the app needed. They get their funds they needed the app for and we get paid.
Fast forward to today...
Our dev team started the year with great news that We'll most likely have to create a new project. Since the amount of new features would be far greater than current feature set, we managed to finally force our boss to use newer technologies (ie. seperate backend symfony4 PHP7+/frontend react, rest api and so on). So we were ecstatic to say the least. With preestimates aimed at a minimum 3 month development period. Since we're comfortable with everything that needs to be done.
Two days later our boss came to me that one of our most annoying clients needs a new feature. Said client uses ancient version written on a napkin because They changed half of the specification 2 weaks before deadline in a software made not by a developer but some sysadmin who didn't know anything. His MVC model was practically VVV model since he even had sql queries in some views. Feature will take 3 days - fixing everything that will break in the meantime - 1-2 months.
F*** it, fine. A little overtime won't kill me.
Yesterday boss comes again... Apparently someone lost a delivery protocol for a project we ended that half a year ago. Whats even better at the time when we asked for hardware to test we never got any. When we asked about any testing enviornment - nothing. The app being SEMI-stable on everything is an overstatement but it was working on the os'es available at the time. Since the client started testing now again, it turns out that both Android app does not work on 8.1/9 and the iOS app does not work on ios12. The client obviously does not want to pay and we can do little with it without the protocol, other than rewriting the apps.
It will take months at least since all of those apps were written by people that didn't know neither the OS'es nor the languages. For example I started writing the iOS one in swift. Only to learn after half of the development time, that swift doesn't like working by C Library rules and I had to use ObjC also. With some C thrown in due to the library. 3 unknown languages, on an unknown platform in 3 months. I never had any apple device in my hand at that time nor do I intend to now. I'm astonished it worked out then. It was a clusterf**k of bad design and sticking everything together with deprecated apis and a gum. So I'll have to basically fully rewrite it.
If boss decides we'll take all those at the same time I'll f***ing jump of a bridge.8 -
From the guy who wrote all the Programming Microsoft books and the Annotated Turing book. Comes this book.
This book is great for beginners great for people who don’t know a lot about software and how computers work, simple read. I like it because it also gives a different prospective, beginning at Morse code and works up from there all the way up to high level languages.
The book gives snippets of code to discuss it not really a tutorial book. It’s a different type of book that all people could understand.
Good read32 -
Been reading devRant for a while now and I have to say I'm sad about the way the future of the software engineering looks like. Everyone seems to have a lot of hatred towards certain techniques and/or platforms and sad to say, but you are missing a lot.
I have been in the biz for around 15 years and have worked on Win, Linux, Mac, Unix, Symbian, Embedded etc. using all sorts of tools and languages and I must say it has taught me a lot and given diversity on my career and I hope you could also open your mind and start educating yourselves. Theres a world behind your bubble!
Peace and love!13 -
After seeing @Gregozor2121 share, I searched around in my bookmarks for similar stuff. Here are a couple of links that I feel is useful for everyone:
A massive list of Free programming books.
https://ebookfoundation.github.io/f...
(Also do explore anything marked as "awesome", cause it literally is awesome!! They have got tons of lists of resources for most programming languages, free software lists, famous stackoverflow answers, quotes & even Pokemon!!)
I also had this bookmarked:
https://github.com/chubin/cheat.sh
Basically cheat sheets at your command line. Pretty neat utility.8 -
Programmer Influencers piss me off to Jupiter and back.
The ones who talk about just being a programmer, and don't do normal tutorials and solve a real-world problem and demonstrate it.
"i iNcREaSeD mY pRoDuCTiViTy bY 90%. hErE's HoW"
"tOp 10 lAnGuAGeS yOu sHoUlD lEaRn iN 2023"
"dAy iN thE LiFe oF a SoFtWaRe EnGiNeEr"
"HeRE's hOw yOu cAn wRiTe bUg fReE cOdE"13 -
Life as a homeless developer.
I'm a lil brainsick but homelessness makes you that way.
I started writing software as a hedge against an old injury i had from my teen years. I have a unique condition leaving me with limited use of my hand as such any jobs like cashier call center and they like are of limits to me, i can't hold change because my hands don't bend flat, and to much typing is excruciating. Therefore being adev should get the most bang for the buck that I have left. Ive been doing this for 12 years. Well it's all bullshit and unicorns. I can't get a job to save my life. All i get is calls from recruiters wanting a full stack retard. I'm an erlang developer for about 5 years, c# php no i can't do Photoshop or frontend gay as colors because it's a different skillet. Oh but trumpy says we're at the lowest unemployment ever, ya because we're all homeless and companies are still looking for unicorns, they don't exist just like the fake jobs which is the real fake news. In reality if a company wants you its because their dev left and you are to fix their broken shit, which never worked in the first place thus cannot be fixed besides I'm not a plumber. In my opinion many companies nowadays are run by liberal sjw children who don't value your time but want the product now, spoilt. Recruiters are the worst, gimme money because i touched your resume. I'd rather just kill myself than try to appease some fucking retarded children. Its so awesome to live in a tunnel while my skills entropy while i have 160 self published github repos, know many programming languages and be told your have no value. its those same children that dont understand the flow of money or value loyalty, claim we have all these jobs but no skillid employees, so they can bring in more visa overstayers, underpay them and claim record profits, the more you pay forieners my countries money the less there is to go around in the society leading to disenfranchised people like me, and you wonder why there's so many shootings in il. How long can i endure homelessness before i start becoming a criminal? Soon i will have no other option. You employers had a choice but I'm going out with a bang.25 -
"Why are there so many programming languages? Why don't you guys all just program in binary?" A friend of mine some of you may remember, the same one who decided to select system32 when trying out some encryption software from the internet, and who put a shutdown script in the start up programs3
-
Soooo I think I have finally come to the point that I may have to create a YouTube channel, to teach software engineering from the ground up... and teach it the way the universities and everyone else should be teaching it, so that they have a solid foundation.... throwing hello world, and loops and variables at folks out of the box without any of the environment context or low level embedded register, even logic gate understanding
That lack of understanding is why, soooo many college students and younger folks, are actually pretty shitty engineers. Everything is high level languages and theoretical concepts to them. Nothing practical, that’s why there’s sooo many python and java developers that can’t for the life of them understand memory management, low level hardware interfacing etc, because the colleges don’t teach it the way it use to be taught.
I seriously fear 30 years from now or sooner when there are few embedded engineers only left till retirement, as without those folks the whole pyramid of electronics falls to pieces.
Java, C#, python, all that shit don’t run on the bare metal... there’s this magical layer of C, and assembler that does all the work just so folks can abstract their thoughts.
Either 1 of two situations will happen.. price of electronics will rise because the embedded guys are few and far between therefore salaries skyrocket... OR everything starts running shit like java on the metal, where there are a over abundance of developers, their salaries will be low because there are soo many but the processing power, space, and energy needed to run java natively causes electronics cost to increase
but regardless 30 years from now if those script kiddies are building everything I fear it cuz there’s gonna be memory leaks, and overflow issues everywhere.. shit be blowing up more than 4th of July.. lol
Soooo in effort to prevent that and keep the embedded engineers up, or atleast properly educate the script kiddies, I’m gonna make that YouTube channel.. 1 maybe 2 videos a week, 1-2 hours sessions each.. starting at the fucken ground and building up.39 -
Fucking windows! I am so fucking done with this microsoft bullshit!
Hear me out here, i am a gamer. I need windows because it has the games (and software to aid those games) unlike any other platform. But windows 10 is basically already phishing andmalware at this point. I stuck to win 7 because it had a start menu and didn't totally drive me up the wall.
Just a short list of their bullshits: ads in the explorer window, ads in your taskbar reminders, data mining like it is nobodies business and trying to hide it, sharing my wifi access with friends (wtf), the fucking retarded new start menu, the crappy fullscreen apps which have less functionality than the actual proper desktop applications that you need to config what you want, and even then pushing multiple updates that simply broke peoples pc's. Fuck that, ill stick to 7.
They are making win10 worse by the week making it unlikely i will ever join that hell, and they are also aiming to force me there. Making windows store exclusives and dx12 only games. What am i supposed to do against that?! The current releases don't bother me much but fuck i figure it is a matter of time until the newest katamari game is their exclusive and i nanananana katamari damacy all over their platform.
And well all alternative os's are just out of the question unless vulkan rendering gets the upper hand. Then i'd switch to whatever stable distro and learn about our new penguin based overlords languages.
For now i will just stick to win7, suck on my thumb while in fetal position and hope it just all goes away.59 -
I'm still at my first job, got the job by word of mouth from a friend.
This company wants me to develop both their iOS and Android apps, and being the solo developer it's a long process. I forgot to mention I had to learn objective-c on the job, and being from a java background Android was easy to pick up but it wasn't exactly 100% easy either.
8 months down the line I finished the iOS app and working on the Android app, which is more so copying the features I did with the Android prototype I worked on at the start.
I get paid minimum wage with from the looks of it no sight of a pay raise.
This company doesn't seem to know about how difficult it is to be the only developer for two apps in two different languages.
Anyway aside from this I was wondering if I could get some advice, I want to apply for jobs while I finish up the Android app, but is it a good idea to put the company I work for on my CV? I don't want to risk getting found out for looking for a job, without my boss knowing.
Would it be ideal to just have some sort of more information on request type thing if the jobs I apply for respond?
I guess I could stay until I'm here for one year (student advisor said this) but in saying that I don't think he understands that software development is done in projects rather than time, and after these apps I'll have to start on a new app from scratch, which I'm not looking forward to.
Anyways for any advice you guys give me thanks in advance I really appreciate any input, just wanna get out of this job, the 10 hours of commute I spend a week is killing me :/ along with it being expensive.9 -
Can someone tell who the fuck lets morons with absolutely 0 knowledge of how the industry works go on and write articles concerning "what programming languages to learn" clickbait articles?
Look, I never looked into them. Not even when starting, I knew (out of spite) that the people that built Windows Vista were developers and then I went ahead to look what a software engineer was. I went down the rabbit hole from that and my next step at the time (I was on the local library) was to go ahead and look for programming books, C++ and Java caught my eye, so I got them two books and went down. Later on I found about JS and Python and similar shit like that and I just continued to learn. I seldom bothered to learn from internet articles because to my opinion if I needed to read documentation then I might as well fucking read it from the people that designed X technology.
some were good, some were shit, etc etc, but I never bothered to look for "what programming languages to learn" articles because I could give close to two shits about some other dickhead telling me what to learn, I have always been rather hesitant to take other people's opinion into consideration when it comes to my own learning.
BUT today I clicked on one of those articles out of curiosity.....
"Many DEVELOPER (notice the lack of proper grammar) choose to leave Visual Basic in favor of more modern frameworks like C#, Java or .NET"
Ok, so, for whatever the fuck reason Java is mentioned along C# and a fucking framework (.NET) rather than just C# for microsoft shit, is this moron talking about VB.NET at all? is he going about VB6? what? what is going on here?
Obj C is not relevant at all and should be immediately replaced by Swift since it is a modern, and stable language (never mind that each release has breaking changes on entire code bases, yeah, fuck it, just jump alltogether and ignore Obj C and the decades of stable code it has)
"Coffeescript has been replaced by the newer features of Java" <--- ok fam, you lost me here, give me your "ITPro" card please and then kick yourself repeatedly in the groin since I won't be bothered touching you, i might get some stOOpid on me.
Fuck, these articles are all over the place, from idiots like the one above, to the moron raving about pharo smalltalk shitting on every tech you use.
Just.....please bring back shit like byte magazine and shit.....please? or Linux Format, make Linux Format more popular across the board, where people who know their shit think twice before spewing their bullshit to the masses? Some fucking kid there might want to know where to start and these fucking idiots are out there just ruining shit for everything.25 -
It has been bugging the shit out of me lately... the sheer number of shit-tier "programmers" that have been climbing out of the woodwork the last few years.
I'm not trying to come across as elitist or "holier than thou", but it's getting ridiculous and annoying. Even on here, you have people who "only do frontend development" or some other lame ass shit-stain of an excuse.
When I first started learning programming (PHP was my first language), it wasn't because I wanted to be a programmer. I used to be a member (my account is still there, in fact) of "HackThisSite", back when I was about 12 years old. After hanging out long enough, I got the hint that the best hackers are, in essence, programmers.
Want to learn how to do SQL injection? Learn SQL - write a program that uses an SQL database, and ask yourself how you would exploit your own software.
Want to reverse engineer the network protocol of some proprietary software? Learn TCP/IP - write a TCP/IP packet filter.
Back then, a programmer and a hacker were very much one in the same. Nowadays, some kid can download Python, write a "hello, world" program and they're halfway to freelancing or whatever.
It's rare to find a programmer - a REAL programmer, one who knows how the systems he develops for better than the back of his hand.
These days, I find people want the instant gratification that these simpler languages provide. You don't need to understand how virtual memory works, hell many people don't even really understand C/C++ pointers - and that's BASIC SHIT right there.
Put another way, would you want to take your car to a brake mechanic that doesn't understand how brakes work? I sure as hell wouldn't.
Watching these "programmers" out there who don't have a fucking clue how the code they write does what it does, is like watching a grown man walk around with a kid's toolbox full or plastic toys calling himself a mechanic. (I like cars, ok?!)
*sigh*
Python, AngularJS, Bootstrap, etc. They're all tools and they have their merits. But god fucking dammit, they're not the ONLY damn tools that matter. Stop making excuses *not* to learn something, Mr."IOnlyDoFrontEnd".
Coding ain't Lego's, fuckers.36 -
EEEEEEEEEEEE Some fAcking languages!! Actually barfs while using this trashdump!
The gist: new job, position required adv C# knowledge (like f yea, one of my fav languages), we are working with RPA (using software robots to automate stuff), and we are using some new robot still in beta phase, but robot has its own prog lang.
The problem:
- this language is kind of like ASM (i think so, I'm venting here, it's ASM OK), with syntax that burns your eyes
- no function return values, but I can live with that, at least they have some sort of functions
- emojies for identifiers (like php's $var, but they only aim for shitty features so you use a heart.. ♥var)
- only jump and jumpif for control flow
- no foopin variable scopes at all (if you run multiple scripts at the same time they even share variables *pukes*)
- weird alt characters everywhere. define strings with regular quotes? nah let's be [some mental illness] and use prime quotes (‴ U+2034), and like ⟦ ⟧ for array indexing, but only sometimes!
- super slow interpreter, ex a regular loop to count to 10 (using jumps because yea no actual loops) takes more than 20 seconds to execute, approx 700ms to run 1 code row.
- it supports c# snippets (defined with these stupid characters: ⊂ ⊃) and I guess that's the only c# I get to write with this job :^}
- on top of that, outdated documentation, because yea it's beta, but so crappin tedious with this trail n error to check how every feature works
The question: why in the living fartfaces yolk would you even make a new language when it's so easy nowadays to embed compilers!?! the robot is apparently made in c#, so it should be no funcking problem at all to add a damn lua compiler or something. having a tcp api would even be easier got dammit!!! And what in the world made our company think this robot was a plausible choice?! Did they do a full fubbing analysis of the different software robots out there and accidentally sorted by ease of use in reverse order?? 'cause that's the only explanation i can imagine
Frillin stupid shitpile of a language!!! AAAAAHHH
see the attached screenshot of production code we've developed at the company for reference.
Disclaimer: I do not stand responsible for any eventual headaches or gauged eyes caused by the named image.
(for those interested, the robot is G1ANT.Robot, https://beta.g1ant.com/)4 -
This rant is aimed towards those who hate on JavaScript developers and the JS language:
Dear Asshole,
I am a JavaScript developer by choice.
I think JavaScript is great.
I agree that JavaScript have some bad sides to it, but I believe that the community is driving good change to the ecosystem.
I appreciate other models of other languages.
I do not include 3rd party NPM modules without checking their source and credibility.
I will not use a framework (i.e. react, Vue, Anguler) if it's not needed.
And finally:
I can do any software engineering tasks a software engineer is supposed to do.
Kind regards,
Nedo-the-angry.18 -
OK heavy rant on 'modern' software development coming! --> don't take it to seriously though :-)
Electron... why does that shit exist? It is like stacking all the worst technologies available to mankind into an enormous pile of crap and polishing that turd to look like something wonderful. It is big, slow and overall AWFUL!
An example? ... Microsoft Teams :-( it burns your PC like fire and makes it squeal for mercy.
When a library/framework becomes the ultimate evolution of abstraction layer upon abstraction layer and it simply should stop to exist and a reset button needs to be pressed.
I would love to see some research on the real world environmental impact that all those shitty slow and bloated web technologies have.
Solution:
Software energy label!
C, C++ and Rust e.t.c. and all accompanying efficient UI libraries should be the only languages/implementations allowed to get a A, B and C label.
Python (without C libraries like Numpy), JavaScript and all those other slow interpreted scripting/Web API nonsense should get a D, E or F label by default.
Have fun!12 -
Describe the most hellish development environment you can imagine for yourself:
Me:
Workstation OS: Windows Vista with network boot, no hard disk and can't save local files
Server OS: Closed physical appliance of Windows Server 2000 with no possibility of installing extra software
Languages: Visual Basic, Perl, Php, assembly, ABAP
IDE: None, just echoing code lines to files
Web technologies: IIS, Sharepoint, Java applets, asp
Network: No internet access, internal company network only
Web browser: IE 6
Graphical design software: msPaint
Version control: Emails
Team communication: Emails
Software distribution vector: Emails
Boss: some 40 year old guy who knows nothing about computers
Not kidding most of these stuff were actually real in my previous workplace.11 -
One of the things I really hate on Windows (and Microsoft software in general) is that the keyboard shortcuts are localized therefore are different from 90% of the apps that I use on a daily basis.
Two examples of this (EN-US vs PT-PT):
- "Save" is "Gravar" while "Underline" is "Sublinhar". This means that whenever I press Ctrl + S to save a doc in MS Word I underline a word instead of saving the bloody document.
- "All" is "Tudo" so when I want to select all the itens on a folder in the File Explorer I have to press Ctrl + T, the same shortcut I press in pretty much every single tabbed app to open a new tab.
This is terrible for the user experience because different languages provide different keyboard shortcuts to the user which goes against the concept of the usefulness of a keyboard shortcut: perform an action from anywhere without having to know its menu or menu description.11 -
So i am a trainee at a Software Company in germany. Im in My thir year. We got a new trainee who has a better degree then me and is 3 years older (hes 23). yesterday we was in our Office working and My "teacher/Boss") was talking with a customer. Then the new trainee asks me at least 5 fucking stupid questions. I stay calm and answer them normally because i think He dosent kwow any better and would Learn it. So this fucker works on a typo 3 Website and ask me why He cant Put Java Inside his Website to animate some articles. I ask him why He would want to do this with Java? He says (like a ignorant fucker) because its only working using Java. I kindly ask him if He maybe means javascript and Not Java. And He says: oh yes i mean That but thats the Same thing. I say no its not javascript and Java are different languages. He responds with no Java is just a shorter Form of saying javascript. I quit helping this guy. The fact That he thinks He knows better its just killing me.7
-
Any firmware developers like me here?? .!! The second class citizens of the world of software development.... People who code in outdated languages, use outdated tools(console print is a luxury) to create cool stuff.3
-
In the Ruhr area (Germany) we have some very old, very strange words with strange meanings. One of those words is ‚Prutscher‘.
A Prutscher refers to a person who does things but never gets a good result, due to lack of knowledge or simple carelessness. Most of the time, Prutschers are people who are interested in certain subjects and often work in the related jobs, but who lack the motivation to properly train themselves, learn what there is to learn and to always keep up with their technologies .
Here are a few examples I've stumbled upon so far in my career:
- Developers in their 60's who read a book about PHP 25 years ago and decided to become a software developer. Since then haven't read anything about it. Who then now build huge spaghetti monoliths for large companies, in which they prefix every function, every variable and constant with their initials and, of course, use Hungarian notation.
- People who read half a fucking tutorial about <insert any fancy js framework here> and start blogging/tweeting about it
- Senior web developers who need to be told what the fuck CORS is and who can't even recognize CORS related errors in their browser console.
- People who have done nothing else for 18 years than building websites for companies on Wordpress 1.x and writing few lines of PHP and Javascript from time to time. Those who are now applying as a frontend dev due to the difficult economic situation and are surprised that they are not accepted due to a lack of experience.
- Developers who are the only ones working on Windows in the team and ask their Linux colleagues for help when Windows starts bitchin.
- People who have been coding for 30 years, have worked with ~42 languages and don't know the difference between compiled and interpreted languages in the job interview.
- Chief developers at a large newsletter-publisher who think it's a good idea to build your own CMS (due to a lack of good existing ones, of course).
- Developers who have been writing PHP applications for multinational corporations for 25 years and cannot explain how PHP is executed. They don't even know what the fucking OPcache is, let alone fpm. FML
- People who call themselves professional developers but never ever heard of DRY, KISS, boy-scout rule, 12-Factor App, SOLID, Clean Code, Design Patterns, ...
- Senior developers wondering why the bash script won't run on their fucking Windows machine.
- Developers who consider Typescript to be a hindrance and see no value in it.
- Developers using ftp for deployments in 2022
- Senior Javascript Developer applying for a job and for whom Integer is a primitive data type in JS.
- Developers who prefer to code without frameworks and libraries because they are only an unnecessary burden/overhead and you can quickly code everything up yourself.
- Developers who think configuring their server(s) manually is a good idea.
You fucking Prutscher. What you have already cost me in terms of work and nerves. I can't even put it into words how deeply I despise you. I have more respect for the chewing gum that has been stuck in my damn trash can for the past 3 years than I do for you guys. You are the disgrace of our profession. I will haunt you in your dreams and prefix every fucking synapse of your brain with MY initials.
As a well-known german band once sang in a very fitting song: I wouldn't even piss on you if you were on fire.
If you recognized yourself in one of the examples here: FUCK YOU!29 -
Tldr; make sure what you study is relevant to the field and you enjoy it otherwise don't waste your time.
BTW: devrant is awesome it gets me through the day.
So I am almost 3/4ths through a master's in cs and I am contemplating why I went to school in the first place/dropping out.
My program is basically an extension of the bs I got from the same school meaning we learn very general cs topics. There is only one ai class for example.
I had a junior developer position before I even got my bs so now that I am this far along and looking at job openings I'm wondering what why and how my school is able to get away with teaching us this shit.
After all my schooling I learnt more on my own and through Google. I have little to show for my school work other than a degree that says I did a bunch of busy work. And the specific things that I did learn I will never ever remember. Seriously. Who here knows what a MIB and OID are and have actually used them?
I wish I tried harder to get into a school like Berkeley but just looking at their applications is depressing. I always had issues with school and they expect my to have the grades, extra curriculars and other shit. I'll build you a robot or make you a website but I'm not doing that nonsense.
And then there's Google and apple and all these big tech companies expecting me to have written full Enterprise software and know every single algorithm and programming language because everyone uses something different. Sure I wish I had experience in all 50 languages that are popular right now but I don't. And I'm not gonna learn it from school that's for damn sure.
Who here actually went to a good school and can say it helped them in the real world? How many employers actually care about school over actual experience?
Who knows how to burn a school down and get away with it? Or at least make teachers with Phds stop reading off slides all lecture. I know how to fucking read for fucks sake. Not too mention they use shitty software made in 2003 that's no longer supported. And I could go on about the teacher last quarter who graded the midterm on final day while he flirted with the 3 girls in class. And I could go on and on and on but I feel like I need to start being productive so I don't waste away.
Just so done.7 -
Why do people jump from c to python quickly. And all are about machine learning. Free days back my cousin asked me for books to learn python.
Trust me you have to learn c before python. People struggle going from python to c. But no ml, scripting,
And most importantly software engineering wtf?
Software engineering is how to run projects and it is compulsory to learn python and no mention of got it any other vcs, wtf?
What the hell is that type of college. Trust me I am no way saying python is weak, but for learning purpose the depth of language and concepts like pass by reference, memory leaks, pointers.
And learning algorithms, data structures, is more important than machine learning, trust me if you cannot model the data, get proper training data, testing data then you will get screewed up outputs. And then again every one who hype these kinds of stuff also think that ml with 100% accuracy is greater than 90% and overfit the data, test the model on training data. And mostly the will learn in college will be by hearting few formulas, that's it.
Learn a language (concepts in language) like then you will most languages are easy.
Cool cs programmer are born today😖31 -
I spent over a decade of my life working with Ada. I've spent almost the same amount of time working with C# and VisualBasic. And I've spent almost six years now with F#. I consider all of these great languages for various reasons, each with their respective problems. As these are mostly mature languages some of the problems were only knowable in hindsight. But Ada was always sort of my baby. I don't really mind extra typing, as at least what I do, reading happens much more than writing, and tab completion has most things only being 3-4 key presses irl. But I'm no zealot, and have been fully aware of deficiencies in the language, just like any language would have. I've had similar feelings of all languages I've worked with, and the .NET/C#/VB/F# guys are excellent with taking suggestions and feedback.
This is not the case with Ada, and this will be my story, since I've no longer decided anonymity is necessary.
First few years learning the language I did what anyone does: you write shit that already exists just to learn. Kept refining it over time, sometimes needing to do entire rewrites. Eventually a few of these wound up being good. Not novel, just good stuff that already existed. Outperforming the leading Ada company in benchmarks kind of good. At the time I was really gung-ho about the language. Would have loved to make Ada development a career. Eventually build up enough of this, as well as a working, but very bad performing compiler, and decide to try to apply for a job at this company. I wasn't worried about the quality of the compiler, as anyone who's seriously worked with Ada knows, the language is remarkably complex with some bizarre rules in dark corners, so a compiler which passes the standards test indicates a very intimate knowledge of the language few can attest to.
I get told they didn't think I would be a good fit for the job, and that they didn't think I should be doing development.
A few months of rapid cycling between hatred and self loathing passes, and then a suicide attempt. I've got past problems which contributed more so than the actual job denial.
So I get better and start working even harder on my shit. Get the performance of my stuff up even better. Don't bother even trying to fix up the compiler, and start researching about text parsing. Do tons of small programs to test things, and wind up learning a lot. I'm starting to notice a lot of languages really surpassing Ada in _quality of life_, with things package managers and repositories for those, as well as social media presence and exhaustive tutorials from the community.
At the time I didn't really get programming language specific package managers (I do now), but I still brought this up to the community. Don't do that. They don't like new ideas. Odd for a language which at the time was so innovative. But social media presence did eventually happen with a Twitter account that is most definitely run by a specific Ada company masquerading as a general Ada advocate. It did occasionally draw interest to neat things from the community, so that's cool.
Since I've been using both VisualStudio and an IDE this Ada company provides, I saw a very jarring quality difference over the years. I'm not gonna say VS is perfect, it's not. But this piece of shit made VS look like a polished streamlined bug free race car designed by expert UX people. It. Was. Bad. Very little features, with little added over the years. Fast forwarding several years, I can find about ten bugs in five minutes each update, and I can't find bugs in the video games I play, so I'm no bug finder. It's just that bad. This from a company providing software for "highly reliable systems"...
So I decide to take a crack at writing an editor extension for VS Code, which I had never even used. It actually went well, and as of this writing it has over 24k downloads, and I've received some great comments from some people over on Twitter about how detailed the highlighting is. Plenty of bespoke advertising the entire time in development, of course.
Never a single word from the community about me.
Around this time I had also started a YouTube channel to provide educational content about the language, since there's very little, except large textbooks which aren't right for everyone. Now keep in mind I had written a compiler which at least was passing the language standards test, so I definitely know the language very well. This is a standard the programmers at these companies will admit very few people understand. YouTube channel met with hate from the community, and overwhelming thanks from newcomers. Never a shout out from the "community" Twitter account. The hate went as far as things like how nothing I say should be listened to because I'm a degenerate Irishman, to things like how the world would have been a better place if I was successful in killing myself (I don't talk much about my mental illness, but it shows up).
I'm strictly a .NET developer now. All code ported.5 -
Hello World! First post here. I'm literally done with frontend stuff. I want to design code, not to code design. Unless it's Processing. I find it cute. So.. I have a somewhat handy grasp on C++ because of a class in electronics course, Python seems quite easy to catch. I'm totally new to programming. I'd like to get into software, game development and android development (but I would like to do things cross-platform).
Which paths, resources, languages, useful books, videos, or just anything would you recommend?
To be fair, I have no coding friends so mentorship or simply finding code buddies would be great. 💜7 -
seeing these things make me very uncomfortable, I feel like reaching into the software and wiping it off, makes me wonder how much of a mess this npm ecosystem is going to become, I really dont know much of how these things work. I figured the issue could probably be the same across languages, libraries sitting atop libraries until the whole thing becomes unmanageable. I'll stop rambling now
that's the installation of expo-cli8 -
Languages like python and R are some-what high level languages, with an easy syntax and very readable code. This useful essentially to make it easier for non-programmers to use it. For me as a software developer with +4 years of professional programming. I started with Assembly, Quick-Basic to C++, Java then C#, I found Python super convenient, and at times way too convenient.
At first it felt like I was cheating, and would not consider myself actually writing code, more like pseudo-coding.
After a year or so, I got used to it and it became my default, but it still does not feel right .. is anyone else feeling the same?
I do believe that coding the hard way is not always the right way, but I am just wired that way.17 -
Well. I was fresh software engineer. Was so excited to start working on real life codes.
They put me in charge of writing user manual. In 2 different languages 🤐3 -
I propose that the study of Rust and therefore the application of said programming language and all of the technology that compromises it should be made because the language is actually really fucking good. Reading and studying how it manages to manipulate and otherwise use memory without a garbage collector is something to be admired, illuminating in its own accord.
BUT going for it because it is a "beTter C++" should not constitute a basis for it's study.
Let me expand through anecdotal evidence, which is really not to be taken seriously, but at the same time what I am using for my reasoning behind this, please feel free to correct me if I am wrong, for I am a software engineer yes, I do have academic training through a B.S in Computer Science yes, BUT my professional life has been solely dedicated to web development, which admittedly I do not go on about technical details of it with you all because: I am not allowed to(1) and (2)it is better for me to bitch and shit over other petty development related details.
Anecdotal and otherwise non statistically supported evidence: I have seen many motherfuckers doing shit in both C and C++ that ADMIT not covering their mistakes through the use of a debugger. Mostly because (A) using a debugger and proper IDE is for pendejos and debugging is for putos GDB is too hard and the VS IDE is waaaaaa "I onlLy NeeD Vim" and (B) "If an error would have registered then it would not have compiled no?", thus giving me the idea that the most common occurrences of issues through the use of the C father/son languages come from user error, non formal training in the language and a nice cusp of "fuck it it runs" while leaving all sorts of issues that come from manipulating the realm of the Gods "memory".
EVERY manual, book, coming all the way back to the K&C book talks about memory and the way in which developers of these 2 languages are able to manipulate and work on it. EVERY new standard of the ISO implementation of these languages deals, through community effort or standard documentation about the new items excised through features concerning MODERN (meaning, no, the shit you learned 20 years ago won't fucking cut it) will not cut it.
THUS if your ass is not constantly checking what the scalpel of electrical/circuitry/computational representation of algorithms CONDONES in what you are doing then YOU are the fucking problem.
Rust is thus no different from the original ideas of the developers behind Go when stating that their developers are not efficient enough to deal with X language, Rust protects you, because it knows that you are a fucking moron, so the compiler, advanced, and well made as it is, will give you warnings of your own idiotic tendencies, which would not have been required have you not been.....well....a fucking idiot.
Rust is a good language, but I feel one that came out from the necessity of people writing system level software as a bunch of fucking morons.
This speaks a lot more of our academic endeavors and current documentation than anything else. But to me DEALING with the idea of adapting Rust as a better C++ should come from a different point of view.
Do I agree with Linus's point of view of C++? fuck no, I do not, he is a kernel engineer, a damn good one at that regardless of what Dr. Tanenbaum believes(ed) but not everyone writes kernels, and sometimes that everyone requires OOP and additions to the language that they use. Else I would be a fucking moron for dabbling in the dictionary of languages that I use professionally.
BUT in terms of C++ being unsafe and unsecured and a horrible alternative to Rust I personaly do not believe so. I see it as a powerful white canvas, in which you are able to paint software to the best of your ability WHICH then requires thorough scrutiny from the entire team. NOT a quick replacement for something that protects your from your own stupidity BY impending the use of what are otherwise unknown "safe" features.
To be clear: I am not diminishing Rust as the powerhouse of a language that it is, myself I am quite invested in the language. But instead do not feel the reason/need before articles claiming it as the C++ killer.
I am currently heavily invested in C++ since I am trying a lot of different things for a lot of projects, and have been able to discern multiple pain points and unsafe features. Mainly the reason for this is documentation (your mother knows C++) and tooling, ide support, debugging operations, plethora of resources come from it and I have been able to push out to my secret project a lot of good dealings. WHICH I will eventually replicate with Rust to see the main differences.
Online articles stating that one will delimit or otherwise kill the other is well....wrong to me. And not the proper approach.
Anyways, I like big tits and small waists.14 -
I started thinking and worrying about numbers much more than before
in the US, you write numbers like this:
1,000.00
in Germany usually like this:
1.000,00
and in programming languages like this:
1000.00
now i wonder how to type a number, whenever i have to use german software
should i use the US way, the german way or the dev way? the wrong one could possibly break it11 -
Why are people complaining about debugging?
Oooh it’s so hard.
It’s so boring.
Can someone do this for me?
I honestly enjoy debugging and you should too..
if it’s not your code, you’ll get to understand the code better than the actual author. You’ll notice design improvements and that some of the code is not even needed. YOU LEARN!
If it’s your own code (I especially enjoy debugging my own code): it forces you to look at the problem from a different perspective. It makes you aware of potential other bugs your current solution might cause. Again, it makes you aware of flaws in the design. YOU LEARN!
And in either case, if it’s a tricky case, you’ll most likely stop debugging at some point, refactor the shit out of some 50-100 line methods and modulize it because the original code was undebuggable (<- made up a new word there) and continue debugging after that.
So many things I know, I know only because I spend days, sometimes even weeks debugging a piece code to find the fucking problem.
My main language is java and i wouldn’t have believed anyone who told me there’s a memory leak in my code. I mean, it’s java, right? We refactored the code and everything worked fine again. But I debugged the old version anyway and found bugs in Java (java 6.xx I believe?) which made me aware of the fact that languages have flaws as well.. GC has its flaws as well. So does docker and any other software..
Stop complaining, get on your ass and debug the shit out of your bugs instead of just writing it in a different way and being glad that it fixed the issue..
My opinion.3 -
I'm out of my mind bored. I'm an unemployed person with a great job. You'd think this would be awesome. It's torture.
I work for a consulting company. I get paid whether or not they have work for me. They haven't for several months. I'm not hearing anything. I don't know when it will change.
I'm a skilled developer in a few very popular languages - nothing remotely in the ballpark of old or obsolete. I hear that's in demand. I spend most of my time answering questions on Stack Overflow. I really like to help people, but it boggles my mind that the people struggling with the stuff I help them with all have actual work to do and I don't.
I like to learn about new stuff, but I'm just not interested in learning another framework or anything else to add to the giant pile of stuff I'm already not using. It's not fun anymore.
I don't want to do another side project, either. I have a job as a software developer. That should, at some point, involve developing some software.
This is sucking the life out of me. It's harder and harder to get out of bed and come to work. I've held off looking for another job because I'm hoping this will change. The people here are great. I could go somewhere else and it could suck for completely different reasons.
Ironically, this is close to the reason why I left my last job. Ten years ago I went through a spell where I just gave up and stopped coming to work for over a month. No one noticed. Other people were stressed about getting laid off. Some of them were. Not me.
Am I part of some weird experiment to see how insane someone can go in this totally screwed-up circumstance? Are people following me around with cameras?
I'd love to find something else, but by all outward appearances I had already found an awesome place to work. There's only one thing missing - the work.
Thanks for listening. I'm just going to put my head on my desk for a while and despair. What is wrong with this industry? We're a mess on so many levels.12 -
1. No paper-pen exams asking defination of OOPs.
2. Introduction of VCS (e.g. GitHub, SVN, etc.)
3. Introduction of new programmimg languages in the curriculum.(Pls stop with C/C++...there are 1000s of tutorial for that)
4. Give access to licensed software. (Especially in India we were forced to use cracked softwares).
There is a lot to change. But i think mentioned all the important stuff.5 -
Ok Storytime.
Yesterday I applied for a summerjob as a Software/Webdeveloper at some companies. Today I got a call and they tell me I have the job. When I asked what kind of things I will have to do there the Recruiter didn't really know, so I accepted because fuck it.
Later I got told that somebody from the team will be calling me. So i ask that guy what I'm going to be doing and he tells me they have a old sharepoint application that they need to migrate to a new sharepoint version.
So I read up on sharepoint and find out about the languages ASP.NET supports aaaaaand it's about my least favorite language C#. (Well actually that would be Visual Basic but nevermind) We did some C# in school but I never got fond of it.
But hey learning something new ain't so bad or is it?
What are your thoughts on Sharepoint, ASP.NET and C#?21 -
I wanna meet the dumbass that decided it was a good idea to teach scratch, basic, java, or even python as a first programming language course in college.
I’m so sick of seeing developers out of with shitty code structure and practices, and absolutely no understanding of what is going on behind the scenes of the IDE when you push run.
In order to be a good engineer you MUST know the basics, the root level, bare bones, bare metal shit.
I fear the future, less and less software engineers are comming out of colleges, the majority today is script kiddies, and folks with some basic java experience.
Who the hell is going to be writing firmware in the future then?
It’s insane the lack of foundational skills these students get in college. If they would get a strong foundation in C, and C++ they can easily attack at problem in any language, but missing the foundation, and relying on IDEs.. you will never be-able to go from a knowing only a high level languages and scripts to Lower level problems.
RIP the future of Software Engineering
Welcome to the hell full of script kiddies27 -
Why is it that software has gotten so hardware heavy these days?
I get that some things require more ram, larger screen resolutions and games.
But even calculator apps are now in the hundreds of MB when the entire Microsoft office suite used to come on a couple of floppies.
Is it laziness and relying on ever higher level languages or is there some reason that stuff gets unnecessarily large now.14 -
Today a teacher asked us about our hobbys. A classmate said 'programming' and after the lesson I asked him which languages he uses. He answered:
"Languages? What languages? I used that software you can program shortcuts with."1 -
I like what I do for a living.
I build software, mostly from scratch or early stage products. Those are different industries, different companies, different technologies, frameworks and languages. Systems that impact economy in a different way.
When I develop software I am picking different parts of same project and try to understand how companies earn money and what are advantages of their software. What are required regulations and requirements to sell the stuff.
How the money flows from client and what they’re changing for. I especially try to understand stuff from business perspective.
When I pay my debts and luckily be still alive but unemployed and with minimum income from stocks / properties rental I will have plenty of time to duplicate many of those businesses.
I picked programming cause it’s touching all parts of economy basically without any skill requirements and certifications. It’s young impactful industry that is luckily not yet regulated. You just need laptop, like to solve puzzles and have plenty of free time and you can create everything. Never forget about it.
Cloud corporations try to make people think differently but it’s just that simple.7 -
The ones who use it, what do you like or value about Linux? Why do you use it?
Before I answer, let me say that I am a noob compared to the rest of this community. I run Ubuntu because Arch was too complicated when I tried and bash scripts equal to frustrations for me. That's my knowledge level.
- I don't feel "observed" when using a Linux distro compared to Windows and macOS.
- Feel more connected to the open source thought and the free spirit.
- Feel like I can do anything I want. Learning new programming languages easily, trying out web servers, try and setup own website or mail server etc.
- Everything is accessible. Read something cool about docker? ALT+T to open a terminal and start up a docker container to try out.
- No Internet browsing for software, like googling "Firefox download english".
- Sometimes forces me to learn about the workings of a computer, like networks, servers, routing, firewalls, bootup sequence etc.
- So many great command line tools. Want to find out quickly who owns a website? Want to query a specific DNS server? All possible within 5 seconds!
All in all using Linux feels like watching a documentary while using Windows is more like watching a dumb comedy show where I can turn my brain off, but get more stupid after a while.6 -
Why does every Software Engineering role at the top companies never have PHP or any functional languages in it’s list of languages they want you to be experienced in?
It’s always Java, Python, C#, C/C++, Objective C or Ruby. What about Elixir, Scala, Haskell or Clojure?9 -
Finally after working on programming languages and Data Structures for too long developing my first software with a GUI. In python. 😀😀😀
Though its only a calculator for now. 😅😅😅😅3 -
How common is it for development job applicants to lie about their skillsets and experience?
Had an applicant come interview for a senior software engineer role, has been in the same company for 8 years and his resume is sprayed with almost every tech speciality and language there is, claims to be proficient in 8+ languages, done AWS server migrations, built CI/CD pipelines from scratch, written CloudFormation scripts, built microservices, worked with AWS services and serverless platforms, has managed a team, does salary and performance reviews
My gut feeling is when someone claims to have knowledge and experience across multiple specialities, they’re skills in any of those domains are only skin deep8 -
AI is the future, and it's a future I want to be part of.
This week was very stressful, beside my usual depression and personal issues, I've received a lot of difficult tasks at work, to do in a very short amount of time.
Things I never did, tecnologies I've never used, and for a potential client that is critical for the company at this period in time, and if we won't be able to satisfy their requests we could go bankrupt really soon.
A lot of responsibility, almost no time and a person not competent enough to do it (me), especially on a hurry.
I couldn't sleep in these days, I couldn't think peacefully, concentrate to find the best solutions. I had really bad thoughts.
I couldn't find any useful solution online, on stackoverflow, forums, etc. and I spent hours searching them.
For who knows me here on devRant, probably knows also that I tend to work with old legacy code and dead languages as VB6 and VB.NET.
So integrate "new fancy stuff" isn't that easy and there are no documentation and examples to relay on.
I had fear to even try to understand the documentation (for other languages) and try to write code for it… I was panicking.
With no more ideas, I've decided to try to ask ChatGPT for help.
In maybe 3 or 5 seconds it was able to generate the solution, in VB.NET, with comments and all the explanation needed to understand it and integrate it correctly in my software.
With a few other requests it was able to change it to make it fit better my scenarios.
It's truely unbelivable how the tecnology advanced in the last years, how a computer on the other side is able to reply to my questions with answers that I couldn't find anywhere, because they probably never existed for my case, in VB.NET especially.
ChatGPT made my day, and allowed me to end this stressful moment and give me time to relax and focus on more important personal stuff this weekend.5 -
Nope, definitely not going to work for that customer anymore. Fuck this shit. At least for this week.
My background: mid-30 years old, some kind of business & IT consultant / lead dev working for a mid sized CRM consulting company, with approx 15 years of experience in development and software architecture, most of the time "thinking" in C#, still learning new languages, being a cloud evangelist and team lead. We usually have customers with customers (B2B/B2C).
Personality type "campaigner" (ENFP-A).
Today the project lead of my client (a big corporation in the energy industry) told me that he still didn't order all the necessary resources for the cloud project. Just to be clear: He's on the client side. We (the architects, one internal and me) told him one month ago what we need for the beginning. Just a few things - an Azure subscription, a license for the CRM platform, and our dev tools.
And now let's guess when the project is planned to begin? Yeah, right: 1st of April. NO APRIL'S FOOL. And guess what? Next Tuesday we'll do the onboarding for the new (external) devs, and NOTHING will be ready. Yeah, just let us build stuff in our minds, and on the whiteboards, because it's an AGILE project, right? We don't need any systems and tools...
And now he sent me the questionnaires which need to be answered before any cloud service can be ordered by the corporate IT. And yes, he didn't answer a single thing, and just meant "Those are architecture questions" (they are not) and (of course) "please provide the answers until Monday morning, so we can FINALLY order the services."
Yeah, you fucktard. Of course it's MY FAULT now. Maybe I should write an email to your boss asking how we can speed things up a little bit...3 -
This will definitely trigger many but the truth regardless of how you feel is the greatest programmers are those who understand both the hardware level and software .. only then are you more than a dev or programmer.. you are an engineer...
I challenge the devs who dis believe to go out and learn to build circuits, write optimized, efficient bare metal code.: no sdk.. no api... no drivers ..remove the unneeded abstraction layers that have blinded you...build it yourself, expand your potential and understanding..
Not only will you become more valuable overall, but you will write better code as you are more conscious of performance and space and physics of the physical layer.
I’m not talking about Arduino or raspie
Those who stand strong that high level abstraction languages and use of third party apis is a sufficient sustainable platform of development are blind to reality.. the more people who only know those levels, the less people pushing the industry of the low level.., which is the foundation of everything in the industry.. without that low level software the high level abstractions and systems cannot run
Why did we have huge technology advancements from 70s to early 2000s.... because more people in our industry understood the hardware layer..: wrote the software at the less abstracted layers..
Yeah it takes longer todo things at that low level abstraction.. but good robust products that change the world and industry don’t take a few week or months to build.....
Take this with what you will... I’m just trying to open the eyes of the blind developers to the true nature and reality of our industry23 -
Student here.
For those who got a degree in CS or similar, what is some advice you can offer to a sophomore in school?
The education I have gotten so far for a Software Engineering degree seems like it isn't enough. So far, I only know C++ and front end web development. Besides the little tiny projects they give us, they do not teach us how the field works.
One of my most lingering questions of all is.. what technologies should I know before interning and/or job hunting?!?! There are dozens of languages for everything; I'm lost. I feel the pain for developers in the future who have to catch up on technologies.
I have heard that learning C++ will make it easier to learn other languages. I won't know until I start another language (too busy working in the summers).
What regrets do you have? What do you wish you could've known while studying as a student or self-teaching yourself?8 -
Ye, so after studying for an eternity and doing some odd jobs here and there, all I can show for are following traits:
* Super knowledgeable in arm/Intel assembly language
* C-Veteran with knowledge of some sick and nasty C-hacks/tricks which would even sour the mood of your grandma
* Acquired disdain of any and all scripting languages (how dare you write something in one line for which I need a whole library for!)
* All-in-all low-level programmer type of guy (gimme those juicy registers to write into!)
After completing the mandatory part of my computer science studies, all I did was immerse myself into low-level stuff. Even started to hold lectures and all.
Now I'm at the cusp of being let free into the open market.
The thing is: I'm pretty sure that no company is really interested in my knowledge, as no one really writes assembly anymore.
Sure, embedded programming is still a thing, but even that is becoming increasingly more abstract, with God knows how many layers of software between the hardware and the dev, just to hide all the scary bits underneath.
So, are there people in here who're actually exposed to assembly or any hands-on hardware-programming?
Like, on a "which bit in which register/addr do I need to set" - kind of way.
And if so, what would you say someone like me should lookout for in a company to match my interest to theirs?
Or is it just a pipe dream, so I'd need to brace myself to a mundane software engineer career where I have to process a ticket at a time?
(Just to give a reference: even the most hardware-inclined companies I found "near" me are developing UIs with HTML5 to be used in some such environment ....)12 -
Competent software engineers are in high demand in Belgium. If you are looking for a workplace that treats devs as demi-Gods, relocate now.
Perks available to you are:
- working from home 2-5 days/ week.
- English at the workplace because the northern & southern parts don't speak each other's languages
- terrible rush hour traffic jams allowing you to flexibly choose your schedule as long as there is enough overlap
- pension & hospital insurance
- a company car (electric or fuel)
- ability to get away with any lack of soft skills as long as you're technically strong
- a competitive salary (2-4k/mo), even with almost half of it being eaten by taxes
- limited competition, because there's a sore lack of competent developers15 -
Is your code green?
I've been thinking a lot about this for the past year. There was recently an article on this on slashdot.
I like optimising things to a reasonable degree and avoid bloat. What are some signs of code that isn't green?
* Use of technology that says its fast without real expert review and measurement. Lots of tech out their claims to be fast but actually isn't or is doing so by saturation resources while being inefficient.
* It uses caching. Many might find that counter intuitive. In technology it is surprisingly common to see people scale or cache rather than directly fixing the thing that's watt expensive which is compounded when the cache has weak coverage.
* It uses scaling. Originally scaling was a last resort. The reason is simple, it introduces excessive complexity. Today it's common to see people scale things rather than make them efficient. You end up needing ten instances when a bit of skill could bring you down to one which could scale as well but likely wont need to.
* It uses a non-trivial framework. Frameworks are rarely fast. Most will fall in the range of ten to a thousand times slower in terms of CPU usage. Memory bloat may also force the need for more instances. Frameworks written on already slow high level languages may be especially bad.
* Lacks optimisations for obvious bottlenecks.
* It runs slowly.
* It lacks even basic resource usage measurement.
Unfortunately smells are not enough on their own but are a start. Real measurement and expert review is always the only way to get an idea of if your code is reasonably green.
I find it not uncommon to see things require tens to hundreds to thousands of resources than needed if not more.
In terms of cycles that can be the difference between needing a single core and a thousand cores.
This is common in the industry but it's not because people didn't write everything in assembly. It's usually leaning toward the extreme opposite.
Optimisations are often easy and don't require writing code in binary. In fact the resulting code is often simpler. Excess complexity and inefficient code tend to go hand in hand. Sometimes a code cleaning service is all you need to enhance your green.
I once rewrote a data parsing library that had to parse a hundred MB and was a performance hotspot into C from an interpreted language. I measured it and the results were good. It had been optimised as much as possible in the interpreted version but way still 50 times faster minimum in C.
I recently stumbled upon someone's attempt to do the same and I was able to optimise the interpreted version in five minutes to be twice as fast as the C++ version.
I see opportunity to optimise everywhere in software. A billion KG CO2 could be saved easy if a few green code shops popped up. It's also often a net win. Faster software, lower costs, lower management burden... I'm thinking of starting a consultancy.
The problem is after witnessing the likes of Greta Thunberg then if that's what the next generation has in store then as far as I'm concerned the world can fucking burn and her generation along with it.6 -
I started to get interested in programming at the age of 13. I was started spending a lot time in our school library and read mostly technical books (beginner/hobbyist stuff) about electronics.
Some book was about Quick Basic (hence my username).
On Windoze 95 in a DOS mode IDE I started trying stuff out and soon I had my first tiny console game.
A bit later I started with HTML and CSS stuff, made a website about ongoing jokes in our class and some rants, later I got into VB6 (I hate VB nowadays!) and wrote for a personal school project a learning software (relatively simple one) to learn vocabulary for foreign languages.
At about 15 I started with C++ and later C# .NET, which I liked the most, and started on some new Windows.Forms stuff, created some small websites.
Now I'm working parttime as a professional developer (mostly web, but VR & .NET too) and studying EE at a university.
My parents had no experience with computers at all, so I learned everything myself an with the help of the allmighty internet (the black box with the red dot on top).
That's my story. ;)
Insert your rant about this below this line:
----------------------------------------- -
This is real rant, not one of these funny stories!
So, I spent 4 years to get a Computer Science degree, and did two specializations, 3.5 years more in Uni. I have 6 years of experience working in IT, from support to programming. I also speak 3 languages.
I'm from a South America country, and now I'm living in EU.
I'm 30 now and earning a little more than a MacDonald's cashier earns in the US. I have to live in a shared apartment like a fucking Uni student. I have nothing, no car, no house, no girlfriend. WTF!
IT is a fucking lie! Profession of the future my ass!
In Uni they said that finding a good job was easy, that companies would literally grab us by the neck to work for them. LIE!
I did found a low paying job though, where at least I could learn a lot more.
People were really satisfied with my work and I even received a proposal of one of our clients to work for them, but the offer wasn't good enough.
I tried entering some big companies as a Trainee, but it was so ridiculous, they said they were looking for an IT person, but they asked things related to economy and other stuff that had nothing to do with IT. I always failed in the group work/interview, it was so ridiculous, I remember one candidate saying her dream was to work for the company since she was a child, SERIOUSLY!
When the opportunity came, I moved to EU and now I'm working as a dev. But as I said, I'm not satisfied with it! In the US the yearly average software engineer salary is about 100K, I earn less than 1/4 of it. And don't come saying that US pays more because of the cost of life, here the cost of life is the same or even more expensive, a super small apartment/loft is at least 180K, a simple new car 18K and a Big Mac costs 4€.
In the US, the average salary of someone that just graduated from uni is 60K to 70K! LOL
In EU, it's super hard for someone to earn 100K, that's why many companies are creating offices here, good workforce, 2 to 3 times smaller salary!
IT also sucks because it's too volatile, there's new stuff all the time. Someone always has to come with a new language, new framework, new library, etc etc. And you have to keep learning new stuff all the time.
Also job openings always ask for experienced people, like you must have at least two years of experience with VUE.js, or something.
Do you remember the last time you went to a doctor for a checkup, did they use a new tool, or did something different during the checkup? Probably not, the medic don't have to learn new stuff all the time, he is still using a stethoscope, he is still placing a wooden stick in your mouth to check your throat...
But in IT, almost no one nowadays is going to create code using CoffeeScript, they instead will use TypeScript.
I read an article saying that an IT professional must study 20 hours a week to keep up with new trends. So I must work 40 hours and study another 20? LOL
It's not that I don't like learning new stuff, but this sucks, I want to maybe learn something different or have a hobby.
Today I regret going to uni, I feel it was a waste of time and money. They taught things like calculus and physics that I never had to use professionally, and even programming stuff like linked lists I never had to use.
If instead I had studied dentistry or studied to be a ophthalmologist I think I would be earning more, would be working more independently and wouldn't need to keep up learning new things so much.
Also to work in IT you don't need a diploma, I read an article by a dude that learned programming by his own, did some software for his portfolio and got a job at Google.
When I read these kinds of story I regret even more going to uni, It really feels I wasted my time.
For these reasons I can't recommend going to uni to study IT, if you want to go to uni go study something else!
If you want to study programming do it on your own, there's everything you must know online for free, create a portfolio, and look for a job or even try working for yourself!
Living the life I have now, there's just no incentive to keep going.
Should I keep learning new stuff so maybe I can get a better job that will still pay low, or quit and try creating something on my own?
Or even ditch IT all together and go back to uni? LOL NO!5 -
Started new job almost two moths ago..
For almost 3 years I was developing custom themes, plugins, and widget for WordPress using PHP, jQuery/AJAX, and MySQL.
The new company that hired me brought me on as a backend developer to help rebuild their custom PHP Framework, and other web based software/products as their moving toward Google Cloud Platform.
When I started, MVC and OOP was new to me... took a couple weeks to get the hang of things, and understand their system.
Just when I was getting comfortable, I had a task assigned to me that was all NodeJS...
Had a 30 check-in the week I started the Node task, and was feeling pretty beat down because it was all new to me and I wasn’t making a lot of progress, and still not comfortable with Promises yet, and some other ES6 features but finding my way around slowly but surely.
Manager reassured me that I wasn’t going to be fired and it wasn’t unique to myself. Very encouraging to hear, but I’m my own worst critic so it’s frustrating not being able to make progress like I would with PHP projects.
Fast forward to this week, I started to review another task for a feed and found it’s all Ruby! Another language I have no familiarity with... and started to question if I’ll every get the hang of all these languages and be a solid team member...
Not only do I have to get a grasp on NodeJS and Ruby now, but then I’ll also have to get familiar with GCP and whatever else comes along with it...
Oh and I’m using Linux now instead of Windows/ OSX... so there’s that too.. plus the other command line tools the company built, and uses..
I was comfortable developing in PHP and know I needed to take a step and accept this job to move my career forward but it seems like I’m always behind the 8 ball...
Some days I wonder if it was worth staying a Wordpress developer and just focused on learning ReactJS and stay more Front-end than Backend..
I enjoy working with talented people but I don’t like being the low man on the totem pole knowing I don’t have the experience yet.
Does it feel like this for all devs?!?!14 -
I need to rant about life decisions, and choosing a dev career probably too early. Not extremely development related, but it's the life of a developer.
TL;DR: I tried a new thing and that thing is now my thing. The new thing is way more work than my old thing but way more rewarding & exciting. Try new things.
I taught myself to program when I was a kid (11 or 12 years old), and since then I have always been absolutely sure that I wanted to be a games programmer. I took classes in high school and college with that aim, and chose a games programming degree. Everything was so simple, nail the degree, get a job programming something, and take the first games job that I could and go from there.
I have always had random side hobbies that I liked to teach myself, just like programming. And in uni I decided that I wanted to learn another language (natural, not programming) because growing up in England meant that I only learned English and was rarely exposed to anything else. The idea of knowing another fascinated me.
So I dabbled in a few different languages, tried to find a culture that seemed to fit my style and attitude to life and others, and eventually found myself learning Korean. That quickly became something I was doing every single day, and I decided I needed to go to Korea and see what life there could be like.
I found out that my university offered a free summer school program for a couple of weeks, all I had to pay for was the flights. So a few months later I was there and it was literally the best thing I'd done in my life to that point. I'd found two things that made me feel even better than the idea of becoming the games programmer I'd always wanted to be. Travelling and using my other language to communicate with people that I couldn't in English. At that point I was still just a beginner, but even the simple conversations with people who couldn't speak English felt awesome.
So when I returned home, I found that that trip had completely thrown a spanner into my life plan. All I could think about after that was improving my language skills and going back there for as long as possible. Who knows what to do.
I did exactly that. I studied harder than I'd ever studied for anything and left the next year to go and study in Korea, now with intermediate language skills, everyday conversations no longer being a problem at all.
Now I live here, I will be here for the next year and I have to return to England for one year to finish my degree. Then instead of having my simple plan of becoming a developer, I can think of nothing I want to do less than just stay in England doing the same job every day, nothing to do with language. I need to be at least travelling to Korea, and using my language skills in at least some way.
The current WIP plan is to take intensive language classes here (from next week, every single weekday), build awesome dev side projects and contribute to open source stuff. Then try to build a life of freelance translation/interpreting/language teaching and software development (maybe here, maybe Korea).
So the point of this rant is that before, I had a solid plan. Now I am sat in my bed in Korea writing this, thinking about how I have almost no idea how I'm going to build the life that I want. And yet somehow, the uncertainty makes this so much more exciting and fulfilling. There's a lot more worrying, planning and deciding to do. But I think the fact that I completely changed my life goals just through a small decision one day to satisfy a curiosity is a huge life lesson for me. And maybe reading this will help other people decide to just try doing something different for once, and see if your life plan holds up.
If it does, never stop trying new things. If it doesn't (like mine), then you now know that you've found something that you love as much as or even more that your plan before. Something that you might have lived your whole life never finding.
I don't expect many people to read this all, but writing it here has been very cathartic for me, and it's still a rant because now I have so much more work and planning to do. But it's the good kind of work.
Things aren't so simple now, but they're way more worth it.3 -
1. It's gonna be more and more specialized - to the point where we'll equal or even outdo the medical profession. Even today, you can put 100 techs/devs into a room and not find two doing the same job - that number will rise with the advent of even more new fields, languages and frameworks.
2. As most end users enjoy ignoring all security instructions, software and hardware will be locked down. This will be the disadvantage of developers, makers and hackers equally. The importance of social engineering means the platform development will focus on protecting the users from themselves, locking out legitimate tinkerers in the process.
3. With the EU getting into the backdoor game with eTLS (only 20 years after everyone else realized it's shit), informational security will reach an all-time low as criminals exploit the vulnerabilities that the standard will certainly have.
4. While good old-fashioned police work still applies to the internet, people will accept more and more mass surveillance as the voices of reason will be silenced. Devs will probably hear more and more about implementing these or joining the resistance.
5. We'll see major leaks, both as a consequence of mass-surveillance (done incompetently and thus, insecurely) and as activist retaliation.
6. As the political correctness morons continue invading our communities and projects, productivity will drop. A small group of more assertive devs will form - not pretty or presentable, but they - we - get shit done for the rest.
7. With IT becoming more and more public, pseudo-knowledge, FUD and sales bullshit will take over and, much like we're already seeing it in the financial sector, drown out any attempt of useful education. There will be a new silver-bullet, it will be useless. Like the rest. Stick to brass (as in IDS/IPS, Firewall, AV, Education), less expensive and more effective.
8. With the internet becoming a part of the real life without most people realizing it and/or acting accordingly, security issues will have more financial damages and potentially lethal consequences. We've already seen insulin pumps being hacked remotely and pacemakers' firmware being replaced without proper authentication. This will reach other areas.
9. After marijuana is legalized, dev productivity will either plummet or skyrocket. Or be entirely unaffected. Who cares, I'll roll the next one.
10. There will be new JS frameworks. The world will turn, it will rain.1 -
I continue to internally read and study about Smalltalk in an effort to see where we might have FUCKED UP and went backwards in terms of software engineering since I do not believe that complex source code based languages are the solution.
So I have Pharo. Nothin to complex really, everything is an object, yet, you do have room for building DSL's inside of it over a simple object model with no issue, the system browser can be opened across multiple screens (morph windows inside of a smalltalk system) for which you can edit you code in composable blocks with no issues. Blocks being a particular part of the language (think Ruby in more modern features) give ample room for functional programming. Thus far we have FP and OO (the original mind you) styles out in the open for development.
Your main code can be executed and instantly ALTER the live environment of a program as it is running, if what you are trying to do is stupid it won't affect the live instance, live programming is ahead of its time, and impressive, considering how old Smalltalk is. GUI applications can be given headless (this is also old in terms of how this shit was first distributed) So I can go ahead and package the virtual machine with the entire application into a folder, and distribute it agains't an organization "but why!!!! that package is 80+ mbs!") yeah cuz it carries the entire virtual machine, but go ahead and give it to the Mac user, or the Linux user, it will run, natively once it is clicked.
Server side applications run in similar fashion to php, in terms of lifecycles of request and how session storage is handled, this to me is interesting, no additional runtimes, drop it on a server, configure it properly and off you go, but this is common on other languages so really not that much of a point.
BUT if over a network a user is using your application and you change it and send that change over the network then the the change is damn near instant and fault tolerant due to the nature of the language.
Honestly, I don't know what went wrong or why we are not bringing this shit to the masses, the language was built for fucking kids, it was the first "y'all too stupid to get it, so here is simple" engine and we still said "nah fuck it, unlimited file system based programs, horrible build engines and {}; all over the place"
I am now writing a large budget managing application in Pharo Smalltalk which I want to go ahead and put to test soon at my institution. I do not have any issues thus far, other than my documentation help is literally "read the source code of the package system" which is easy as shit since it is already included inside. My scripts are small, my class hierarchies cover on themselves AND testing is part of the system. I honestly see no faults other than "well....fuck you I like opening vim and editing 300000000 files"
And honestly that is fine, my questions are: why is a paradigm that fits procedural, functional and OBVIOUSLY OO while including an all encompassing IDE NOT more famous, SELECTION is fine and other languages are a better fit, but why is such environment not more famous?9 -
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 -
I'd like to ask: What's trending at the moment instead....
Either I'm old and senile and missing something, or there is not really sth new.
Okay, JS might be crapping out new frameworks in their common "Not invented here" diarrhea....
But otherwise? What's really new?
I don't really know. I'm not only thinking about languages and stuff, but even in hardware there ain't really a big thing going on in my opinion.
Hab ich wat verpennt?
(Have I overslept?)
We had an interesting and frightening discussion regarding NGINX, as it is russian software today and that a new trend of a true, actively developed webserver is severely lacking... Apache looks semi dead and most other niche webservers, too.
That's all I've seen as a "trend" discussion in the latest time4 -
My "dev specialty" when I first started was Flash and ActionScript. I just wanted to make funny games and shitpost animations on Newgrounds.
Eventually I got steered into building basic websites. Those were the Dreamweaver MX days. JavaScript + jQuery were all the rage.
Then I got a job building SharePoint modules, got exposed to legitimate programming languages like C# and learned more about enterprise software architecture, design patterns, yadda yadda. I started hanging out more with the front-end guys, who taught me SASS and SMACSS and all that jazz.
Eventual jobs kept leaning me towards front-end, so I guess that's the hole I find myself in lately. Sometimes I get a sprinkle of devops, some infrastructure stuff, maybe a little solution design here and there.
Now I maintain shitpost enterprise applications built by other devs who like spaghetti and meatballs. At least I put in funny ASCII art for strings in my unit tests. -
Sooooo... I've felt a bit lost during my years as a student and maybe this is a nice place to finally talk about it.
I've had my first programming experiences in school (back then it was delphi, a Pascal variant), then decided after graduating I want to study computer science. I've stuck with it and will finish my masters degree in a few months. (Took me a year longer than the university plans but will likely have a very good grade)
Since i have little programming experience and never coded anything useful (mostly study projects or simple programming tasks) I've always been struggling with depressions, worries of being not good enough and never finding a job etc pp, but in the last few months it got worse since I NEED to apply for jobs now as i graduate next may. I'd really like to improve and found some "learn how to code" websites but the progress seems still slow and meaningless when I compare myself to all those guys out there:
- those comparing several hardware/software pieces casually since they know all the (dis)advantages and specs off by heart
- those who have fierce discussions about languages, libraries, runtimes etc
- those who solve the problems in coding websites with 3 lines and incredibly mathematicsl proofs for why this shortcut works (fastest)
- basically the guys who discuss so many things i've never even heard of
I just feel so lost, useless and like i missed years of learning things everybody else just obviously knows now. Is there any way to catch up? I thought about trying to join a local Chaos Computer Club but they sound like they wouldn't be fond of a noob like me.6 -
You know, I've really been thinking about renouncing my love for Microsoft's products. I got into the tech world through them, so their stuff was all I really knew. It's like a non-dev growing up using Mac and iPhone. You don't really know what other hardware and software can do (especially since Microsoft is now acting a LOT like Apple nowadays). Ever since they killed Windows Phone, I started seeing past the rose-colored glasses. They've annoyed me with one slip-up after the next. The only things that have kept me tied to them are my Windows Insider membership, and their developer platform. Now that I've seen things like Fuchsia and Linux, I realize that the way Microsoft is going about technology is painful to developers and consumers alike, and this is now beginning to hurt their bottom line. I'm sick of it.
The issue is that if I leave the Microsoft platform, I will have no time to waste. I spent the last 2 yeas cozying up to them, and now I will need to find other platforms, languages, and utilities to build a portfolio from. This also means that I will despise pretty much every major tech company for different reasons (Apple for locked-down hardware, Microsoft for locked-down software, Google for it's monopolistic actions and its unfair policies and terms, Amazon for its invasiveness, etc). If things get worse, I'll probably end up going to Linux and joining the open-source community. The only worry I have is what I'll do for a career. I'm almost halfway to getting an Associates in Computer Science, but where do I go from there? Can't make a living open-source (unless I get patrons, which is unlikely), will probably abandon my dream of joining Microsoft or Google, and I don't currently specialize in any particular area of development yet. I want to spend my life dealing with tech and software. But right now, I've got next to no plans. I've got a lot of thinking to do...2 -
Oh my, never was i triggered more. Of course i can only speak for my experience. I study software development as focus.
First off, the starting languages and or concepts you learn.
Why the fuck do they start with java and don't even really explain how instances actually work? Of course they don't. Because it would be way too fucken much for a semester to go over garbage collection, Instanciation of stuff, allocation in such an advanced system, etc..
How about starting with something not 50% managed by a vm?
Good ol' C. And now don't tell me thats a rough start. We all know about these subjects or exams where it's all about sorting people out. Who will be able to manage a whole bunch of shit or who should consider something else.
Yo dawg sick idea: how about sorting it via the will to achieve the skill of coding?
Nah but we make the exams around coding (by the fucking way done on paper, what the hell) such a fucking breeze, asking you how to convert hex do dec.
Meanwhile maths will make you cut yourself in a dark corner, after you nearly shot yourself because of some lame-ass business-subject.1 -
it would help if i had time to learn even a little more C, as I'm bumbling my way through the Linux kernel and GodMode9 (an amazingly powerful 3DS manip tool for everything from the SD card to the NAND to literally raw FIRM0/FIRM1 bootloader access) to try amd patch some code from GM9 into the kernel to handle the SD card *properly* so Linux 3DS doesn't constantly hang when reading/writing to the SD card, to enable Wi-Fi access (same bus location and similar bus structure as SD/NAND access, different processor,) enable NAND decryption and access (yes, really, NAND is encrypted via software, which is... ...fun...) and more.
tl;dr: the 3DS hardware, C, and others' code collectively make me wanna slit my fucking wrists. Hopefully my sacrifice allows higher-level programming languages to be visble for low-level jobs in the future.4 -
Hi there fellow Devranters,
I am new here but my problem is pretty old. You see i stumbled into coding totally by accident. That was about 5 years ago. I have been learning ever since.
But the problem is that each day I just feel less and less of a programmer, more of a failure. I started with python, from sololearn to various ebooks.Then C++ and finally Ruby. But I still feeal weak.Despite the projects that I have worked on I still don't feel good enough. Most especially in Ruby.
I have a friend who is also into coding and coincidentally started about the same time as I did.The difference is that he learnt at university and I am self-taught.We used to talk a lot but we don't anymore,I feel too ashamed, an impostor even. I am scared he'll ask me something and I won't know anything about it.And I once taigjt him OOP. Right now I can't even code a hello world program without reading a whole ebook on python just to be confident.
We had dreams with my friend on a dozen or so projects that would have put us on the software dev map, but I keep avoiding him so much we have barely started any. I am afraid he'll find me too amateurish to work with.
I learn everyday to expand my knowledge,I have subscribed to a gazillion software related stuff on all social media platforms I happen to be in.But deep down I feel insufficient. I have been going through rants since the few hours I joined and it doesn't sound gibberish to me.Neither does other people's code when I go through it.But I am ashamed of mine I end up deleted after it runs successfully.
I just don't feel like a software developer, I don't even know what it takes to be one even. I learned 10 languages focused on 3, laughed at memes only devs get, used linux and loved it too but still I feel like an impostor. I used to be happy about all the things I taught myself, I onced dreamed of working at Google and later having my own startup back home.Now my friend and a couple of his friends have a small start-up and I feel ashamed of myself.
I don't feel like what I know is enough and learning only makes me feel worse, so bad I am scared of coding again now.Yet I just can't stop learning, I feel incomplete when I don't do anything dev related,but I don't even feel my speed is fast enough when I type on my keyboard.
😥😥6 -
First rant that I really want to get out of my chest!
Never hated a job as much as this one. Haven’t done any development/programming related work since I joined. I have been mostly configuring Linux systems for IoT devices. When I get stuck at an issue, it takes me many frustrating nights to figure it out because no one on the team wants to deal with Linux shit… they’d rather be doing real development work (someone actually stated this!). There’s no one else on the team that knows Linux. Even the manager that was supposedly a Linux fanatic can’t even answer some of my questions and if they do, it’s the wrong fucking answer. Joined the company because they sold it as startup team with big money backing. Was excited to learn new technologies, new best software engineering practices, add new programming languages to my resume. But nope, been stuck at configuring Linux systems. At one point I was just pumping out updated Linux images with our updated application for a month straight. I was so excited when a development task was assigned to me a couple weeks back, but guess what?! There were Linux configuration tasks that no one knows how to do or don’t want to look at it, so my one and only fucking development work was swapped out!
And the funny thing is, I barely had any Linux experience when I joined. Why the fuck was I hired?
Man, I even bought books related to Linux programming (application and kernel) before I joined. Those books barely have a crease in them. What a waste.
Now in my free time, I’ve been learning new technologies on my own. Doing my own projects. But damn, I lose a lot of family time. Sorry wifey, I haven’t been paying a lot of attention to you!
But who knows, maybe this experience will have a silver lining in the end.
Thanks for reading :)2 -
Okay... I need to confess.
I actually like the idea of counting arrays from 1 like it is in some languages.
It makes code cleaner.
Think about it.
You would never need to subtract 1 from count/size/length or add 1 for things like the month in javascript because the first item would be at index 1 and many many errors wouldn't be happening because we don't need to force our minds to think another way. I learned counting from 1 after I learned to walk so it's the most natural thing to do. Just because the software/hardware below our language works that way doesn't mean we can not abstract this behavior away. What's your opinion about this? Am I wrong?12 -
Was once interviewing for Ops support roles looking after multiple websites wrote in java, rails, php with some rest apis, apache, varnish and more....
We were also starting moving towards automation and devops practices so we needed to expand...
We have a great CV from someone who had all of the technologies and chef mentioned on their CV so we were positive....
Invited to interview and something wasn't right..... I dropped a "so you mentioned a few different languages on your CV, can you talk me though some of the applications you've looked after and what languages they were written in, etc?"
His reply.. "yes I looked after a lot of applications and helped people with them in English"
Me "oh.. Okay.... So those apps which software languages were they... You mentioned things like Java and Php and automation tech like chef?"
Him "well yes they were all sorts of things but I predominantly looked after the apps that were wrote in English... Didn't deal with any wrote in java or chef... Just English"
Me ".... Does anyone else have any questions?"
Safe to say we didn't offer him the job.... -
I used to love my job, the guy that looked forward to mondays, there was always something new to learn, I was passionate about clean code and learning new languages like Elixir. As a software engineer I thought my occupation had a special significance in this world, I saw possibility and potential of creating something so impactful on the world that it would become my legacy.
Now after 5 years I’m realising that none of this stuff really matters to the world, software engineers aren’t special and it’s evident from our salaries how valuable we are compared to other professions in sales, medicine or law. My friend who works as in customer success management makes more than me.
While some of us will be in the lucky few whose work will change the world, most of us will just be another cog in the wheel, all that matters is how many product/features you ship out, nobody gives a shit about code quality, concurrency and architecture design other than us5 -
The number of scripters and 'data scientists' that call themselves developers will increase, the true art of development will become sidelined and the world's code will become progressively more bloated and inefficient as the rift between hardware and software widens to an echoey chasm.
Then quantum processors will come along, requiring new logic, languages and practices, and once again the true developers will rise up and pave the way for a bunch of entitled, know-it-all and self-promoting QuarkaScripters to come along decades later and pretend like they invented programming. -
I like being diverse in what I can program. I like software development, web development, networking programming, I’m starting to get into embedding programming and using lower level languages like C/C++ (I’ve used them before but not for anything practical) and I enjoy the diversity. It makes me feel good knowing I can extend my programming knowledge.
Also I like having project ideas lined up so I know what I want to do next. And if I don’t finish one I know is easy but I can’t figure out, I CANT MOVE ON! I have to finish it. It’ll drive me fucking nuts.11 -
We are currently refactoring our application in order to use multiple languages. The application startet 1997 and later it supported 2 fix languages. So it's one defined language or the other, this was used in uncountable places. Now a team of 6 developers has to refactor all the code of the last 20 years, where labels are used and an old translator was magically used out of nowhere..
Turns out it's a ton of work to get the software ready for really multiple language support. -
To me this is one of the most interesting topics. I always dream about creating the perfect programming class (not aimed at absolute beginners though, in the end there should be some usable software artifact), because I had to teach myself at least half of the skills I need everyday.
The goal of the class, which has at least to be a semester long, is to be able to create industry-ready software projects with a distributed architecture (i.e. client-server).
The important thing is to have a central theme over the whole class. Which means you should go through the software lifecycle at least once.
Let's say the class consists of 10 Units à ~3 hours (with breaks ofc) and takes place once a week, because that is the absolute minimum time to enable the students to do their homework.
1. Project setup, explanation of the whole toolchain. Init repositories, create SSH keys for github/bitbucket, git crash course (provide a cheat sheet).
Create a hello world web app with $framework. Run the web server, let the students poke around with it. Let them push their projects to their repositories.
The remainder of the lesson is for Q&A, technical problems and so on.
Homework: Read the docs of $framework. Do some commits, just alter the HTML & CSS a bit, give them your personal touch.
For the homework, provide a $chat channel/forum/mailing list or whatever for questions where not only the the teacher should help, but also the students help each other.
2. Setup of CI/Build automation. This is one of the hardest parts for the teacher/uni because the university must provide the necessary hardware for it, which costs money. But the students faces when they see that a push to master automatically triggers a build and deploys it to the right place where they can reach it from the web is priceless.
This is one recurring point over the whole course, as there will be more software artifacts beside the web app, which need to be added to the build process. I do not want to go deeper here, whether you use Jenkins, or Travis or whatev and Ansible or Puppet or whatev for automation. You probably have some docker container set up for this, because this is a very tedious task for initial setup, probably way out of proportion. But in the end there needs to be a running web service for every student which they can reach over a personal URL. Depending on the students interest on the topic it may be also better to setup this already before the first class starts and only introduce them to all the concepts in a theory block and do some more coding in the second half.
Homework: Use $framework to extend your web app. Make it a bit more user interactive with buttons, forms or the like. As we still have no backend here, you can output to alert or something.
3. Create a minimal backend with $backendFramework. Only to have something which speaks with the frontend so you can create API calls going back and forth. Also create a DB, relational or not. Discuss DB schema/model and answer student questions.
Homework: Create a form which gets transformed into JSON and sent to the backend, backend stores the user information in the DB and should also provide a query to view the entry.
4. Introduce mobile apps. As it would probably too much to introduce them both to iOS and Android, something like React Native (or whatever the most popular platform-agnostic framework is then) may come in handy. Do the same as with the minimal web app and add the build artifacts to CI. Also talk about getting software to the app/play store (a common question) and signing apps.
Homework: Use the view API call from the backend to show the data on the mobile. Play around with the mobile project to display it in a nice way.
5. Introduction to refactoring (yes, really), if we are really talking about JS here, mention things like typescript, flow, elm, reason and everything with types which compiles to JS. Types make it so much easier to refactor growing codebases and imho everybody should use it.
Flowtype would make it probably easier to get gradually introduced in the already existing codebase (and it plays nice with react native) but I want to be abstract here, so that is just a suggestion (and 100% typed languages such as ELM or Reason have so much nicer errors).
Also discuss other helpful tools like linters, formatters.
Homework: Introduce types to all your API calls and some important functions.
6. Introduction to (unit) tests. Similar as above.
Homework: Write a unit test for your form.
(TBC)4 -
Dijkstra 1988: "Unfathomed misunderstanding is further revealed by the term 'software maintenance', as a result of which many people continue to believe that programs —and even programming languages themselves— are subject to wear and tear. Your car needs maintenance too, doesn't it?"
npm 2018: "Naaaah!" -
Is Vim viable for Java ecosystem?
Im using vim only for years for various languages and I never had a problem. I dont use IDE or any GUI software almost never for programming.
Im being reassigned to a Java Spring project at my company, and my colleges are telling me I should start using some IDE and what not, but none of them gave me any real reason.
So Im asking is it really that inconviniet to work without IDE in Java/Spring ecosystem? Some real reasons pls.
Im developing in linux, and I know my way in bash5 -
I've been working as a developer for 10 years now... I got my first software development job when I was still learning for my masters.
After all this time I have switched programming languages and product types a few times from web development to mobile apps to desktop software (C++, CEF, QT,).
And I have come to the conclusion that I want early retirement... like right now retirement... I'm done dealing with management that doesn't understand shit... dealing with people we have outsourced part of the shit to... needing to fix stuff that is broken after some other person refactored the code and didn't fully test it and it somehow got approved... dealing with people that think that "know better" and implemented things like that 5 years ago because they thought like "THAT" and will not accept my merge request because of that.
Like don't get me wrong I love to make and develop software, but since this is the 3rd job in the row with a toxic environment like this I feel like I need to move to the country side and open up a farm or something :|2 -
I'm cross-compiling software I create for many years. Ignoring languages targeting some kind of VM, some additional efforts were always needed.
Go (as far as I can see, since 1.5) is doing this right and quite straightforward - select target and architecture, issue build command and you get native executable file. I'm happy ... B)7 -
Y'all can bash me for it, but Python is one language that ought to be banned along with Javascript...
Amount of times that it breaks or have incomplete implementation is absurd. I just had to deal with idiotic developer who just love to break backward compatibility (looking at you numpy), by changing the type or function name by literally one letter which break older software written in Python that were still in use. (They never specify version for dependencies.) The best part is when they intentionally delete older dependency anyway even if the version is specified.
There's a reason why I do things in C language rather than any other languages, one of the big thing about it is that almost every libraries/code have kept backward compatibility in mind.19 -
Update the method books and lectures, first and foremost. Nothing better than studying outdated versions of languages just because university's technical base can't accommodate anything newer.
Upgrade the universities' hardware and software (I studied CS subjects on 1998 hardware with Windows XP and Lubuntu on board).
For the love of anything holy, stop making students program on paper.
Make professors available via e-mail. A surprising number of my professors weren't teach savvy enough to use it.
Introduce programming in highschool. Use a language that is easier to grasp than Delphi or Pascal. We had informatics as a class, and it never covered anything aside from Microsoft Office. -
Recently started an apprenticeship as software developer and tried to build something with JavaScript... aka. copy pasted a bit and after a while my brain kept shouting at me: "YOU DONT EVEN KNOW WHAT YOURE DOING, TAKE A FKIN BOOK AND YOU'LL MAYBE UNDERSTAND WHAT YOURE DOING THERE!" - and I did... turns out that the book is quite old and I finally landed on Codecademy - now I make progress :).
Made some smaller things in other languages before, but never really understood things like objects and classes... codecademy helps! And I can already laugh about some things here :D. This app is great! I feel like I'm part of "something".
Have a nice Day :)!3 -
I often wonder why JS is the only language that has the native support from browsers and native built in DOM apis?
The world has come up to a saturation point for so many techs:
- if a software is needed to be created for mobile, it must go through 1 layer of java (aka JVM) or objective C (i guess? for ios) before being understood by the CPU
- if a software is needed to be run via browser( which itself is made to run on jvm, objective c or machine language), it must go through one layer of js interpretters before being understood by the CPU
all the OS are made on C but the application and application platforms are made on specific languages. I wonder why can't there be a single application platform, if all of them(browser, JVM,objective C and whatever .exe apps run on) are doing the same thing and are equally mature to handle every usecase?13 -
!rant
TL;DR: New(-ish) dev looking for advice to improve workflow and new languages. Hopefully worth a read though :)
Newbie developer here, I took a web applications development class this year since I could take that at another campus rather than do general education courses at my home school, and I have learned and earned a CIW Certification for HTML5, CSS3, and JavaScript, though I know the certificates do squat if I can't apply myself to them, and I have learned PHP and MySQL.
I want to learn more, technically-applicable languages.
My setup is barebones (to a Linux diehard's eyes), with a gaming laptop that I do a lot of workstation stuff on, an RPi 3 B that I do some Linux-y stuff on, and a less-powerful Development Laptop (that I call a devtop) that I occasionally do work away from home on.
I'm sure most will cringe and weep at my workflow, as I use Windows 10 on both systems and the standard NOOBS software on the pi, and I use Brackets as my text editor, as well as the XAMPP AMP stack for testing.
My biggest questions are what could I do to improve my workflow, and what languages should I learn/apply myself to for real-world application (such as Node.js for live-updating server-side applications or C# for Windows applications)?
Thank you for taking the time to read this, any feedback is helpful! I'm just a high school student with a lot of enthusiasm for development!6 -
Software Developer Interview Questions!
Hey friends, for my IT Careers class I have been assigned to interview a software developer. I was wondering if some people would be willing to answer the following questions. Thank you so much!
Name:
Title of position:
Company you work for:
1. What is a typical day at work like?
2. What are your hours like? Are you ever on call?
3. What are the best parts of your job?
4. Are there any downsides?
5. What influenced your decision to choose this career? Are you glad that you did?
6. What education did you need to get?
7. Do you specialize in certain languages or types of programs?
8. Do you work remotely or at the job site?
9. What is your pay like? Are you paid by the hour, or do you get a salary?
10. Was there ever a specific project you've worked on that was your favorite?
11. Does your job require any work outside of work hours?
12. What are the biggest obstacles you run into as a developer?
13. If you could change something about your job, would you? What would it be?
14. What are some tasks you must complete for your job?
15. Is there anything you wish you knew before starting your career?
16. Are there days that seem too repetitive?
17. Do you often have to learn new languages?
18. Have there been any big changes in your career since you first started?
19. How long have you worked as a developer?
20. Is there any advice you would give to college students looking to pursue a development career?
Any responses are appreciated! Thank you so much!9 -
What does a job as a Software Developer Feels like ?
( I was wondering what tasks are exactly needed to be done when you're finally employed as a Software Developer proficient in one or more programming languages. )
Have a Nice day ;)question developer software development programming software engineering coding software developer jobs3 -
Webpack? More like Fudgepack 😡
OK sure, I know it's cool to rip on Webpack without taking 5 minutes to understand it, but I really have tried. Every time I want to do anything which used to be trivial with grunt, gulp or brunch, it requires a whole bunch of sorcery and every post I see online around the same topic inevitably ends with something like "that's not modular", "WebPack doesn't work like that", "you're holding your phone wrong" etc. And it's not like I'm someone who is afraid of new or uncomfortable things. I try new languages almost as often as there are new JavaScript fads (OK maybe not THAT often). I use "weird" keywords and experiment with different key maps all the time. I swap my daily window manager on an almost quarterly basis (and xmonad is no picnic as an introduction to Haskell). But what the fuck is it with so many people in positions of influence in the frontend world always taking one step forward, two steps back and an occasional hop sideways when it comes to tooling (and dragging everyone else along with them)?
How did such a turd of a tool become defacto for so many frontend frameworks? Do hard core JavaScripters just really really hate outsiders and want to deter others from their precious as much as possible? Fuck Webpack and fuck everyone responsible for helping it permeate so thoroughly through the software development industry.2 -
1. Teach DS and Algos. Not basics but advanced data structures and the ones that are recently published.
2. DBMS should show core underlying concepts of how queries are executed. Also, what data structures are used in new tech.
3. Teach linkers, compliers and things like JIT. Parsers and how languages have implemented X features.
4. Focus on concept instead of languages. My school has a grad course for R and Java. (I can get that thing from YouTube !!)
5. Focus a little on software engineering design pattern.
6. It's a crime to let a developer graduate if he doesn't know GIT or any version control. Plus, give extra credits for students contributing to open source. Tell them if they submit a PR you get good grades. If that PR gets merged bonus (straight A may be ?)
7. Teach some design pattern and how industry write code. I am taking up a talk at school to explain SOLID design pattern.
Mostly make them build software!
Make them write code!
Make them automate their homeworks!
Make them an educated and employable student.!1 -
Went to meet up last night. I was there acting like I have no experience and was just starting to learn programming. Suddenly this guy turns and faced me he said non verbatim “don’t use JavaScript thats the worst programming language, its used by wanna be software engineer. Use c# they have blazor so you wont have to code using JS”. My blood pressure went up guys. I understand this because hes kinda old and dont want to learn new things but i got caught off guard. To be honest im not mad, im just sad though, imagine if i was really new and had no experience and just started few months ago. All the hard work and studying will be nothing. Btw hes nice he offered me free food and beer its just JS.
If you’re learning any language specifically JS. Dont mind the naysayers. Just learn it and be good at it. Languages has its use cases. Conversation with whats better programming language is useless and a waste of time thats what my professor said and its true.15 -
When the new owner of the company decide to regroup every branches of the business to use a disastrous unoptimised .NET software. When the current one is very fast, the interface kinda UX-friendly. Now its, a home hosted .NET software with Windows forms elements with multi-windows inside the main software. Just to help you create yourself an image of the situation. It cannot be installed if there is more languages then only En-US. It will freeze the updater.
The time between switching tabs is in average a 3-4-5 seconds each time.8 -
I want to make a "game" on learning spoken languages so people can study while not stressing out on the learning.
The disadvantages:
-Vocab
-Method to memorize is different with every person
-Stress and frustration
-Motivation killer
Advantages:
-Can be interesting, depends on user's interest and willingness
-Explore vocab by exploring or reading in-game texts
-Grammar is heavily broken down to help relate meanings and thorough understanding of a sentence as well as slang
--
Why I put disadvantages first was to see how the software will impact a person's negativity/postivity when using it. As in for example, when you see something that is difficult to understand, users tend to procrastinate or drop it due to it being "difficult"/alienated.
-- onto the rant--
Many apps have really awful way of teaching, its just 3-4 apps chucked into 1 aka all-in-one and expects people to pay just because of the all-in-one app containing flash cards, sentences, audio etc. I use my phone (android) and normally during my intern or my way to school, I would do my reading in the other languages, (separate apps, all free). Also apart from that, students sometimes take 2 years to learn but drop because it's difficult.
TL:DR; apps and classes give shitty lessons, I want to outdo them and let students have a better chance at studying new spoken languages.2 -
I started in Lua in a program called AMS (it made autorun programs but has full scripting support making it pretty powerful) making little software applications.
That evolved into PHP and shortly after JS, HTML and CSS.
After a while i added other languages and it continues to grow today.
The UI aspect has just been something i have always had an eye for. -
How do I become a consultant? Do I need to master some programming languages and programming patterns and get "know-how" beyond of the general population of software engineers?10
-
1. Languages will evolve to make as short as possible in terms of lines of code. Shorter syntaxes all the way.
2. Each platform/part of architecture will have only 1-2 languages to code in. There will be convergence of languages. This is more to do with industry usage. Underground new languages will still continue to flourish.
3. Focus will be more on natural language. Both as research item for understanding humann languages better and possible movement of coding languages in the direction of natural languages. Natural syntax as much as possible.
4. Softwares will be self learning. Every interaction will result in the software to evolve as per your usage. That would mean the same software will behave differently for every user. This will be basis user's interaction.
5. Less physical interaction. More to do with what the user thinks. Intuitive.rant wk127 languages interaction coding coding in future software development ai to overtake humanity soon futuristic future future is now1 -
Looking for a software engineer job being mostly self taught feels harder. A this point I'm used to companies not replying to my applications. I failed a coding test for a Silicon Valley startup and learned a lesson. (don't apply for jobs that require knowledge of languages that I don't know nothing about). Anyway I'm still feeling positive and I'm not gonna give up6
-
Windows is THE platform for writing software and you know it. Also JS is the king of all programming languages because it's just the best.9
-
A very long rant.. but I'm looking to share some experiences, maybe a different perspective.. huge changes at the company.
So my company is starting our microservices journey (we have a 359 retail websites at this moment)
First question was: What to build first?
The first thing we had to do was to decide what we wanted to build as our first microservice. We went looking for a microservice that can be used read only, consumers could easily implement without overhauling production software and is isolated from other processes.
We’ve ended up with building a catalog service as our first microservice. That catalog service provides consumers of the microservice information of our catalog and its most essential information about items in the catalog.
By starting with building the catalog service the team could focus on building the microservice without any time pressure. The initial functionalities of the catalog service were being created to replace existing functionality which were working fine.
Because we choose such an isolated functionality we were able to introduce the new catalog service into production step by step. Instead of replacing the search functionality of the webshops using a big-bang approach, we choose A/B split testing to measure our changes and gradually increase the load of the microservice.
Next step: Choosing a datastore
The search engine that was in production when we started this project was making user of Solr. Due to the use of Lucene it was performing very well as a search engine, but from engineering perspective it lacked some functionalities. It came short if you wanted to run it in a cluster environment, configuring it was hard and not user friendly and last but not least, development of Solr seemed to be grinded to a halt.
Elasticsearch started entering the scene as a competitor for Solr and brought interesting features. Still using Lucene, which we were happy with, it was build with clustering in mind and being provided out of the box. Managing Elasticsearch was easy since there are REST APIs for configuration and as a fallback there are YAML configurations available.
We decided to use Elasticsearch since it provides us the strengths and capabilities of Lucene with the added joy of easy configuration, clustering and a lively community driving the project.
Even bigger challenge? Which programming language will we use
The team responsible for developing this first microservice consists out of a group web developers. So when looking for a programming language for the microservice, we went searching for a language close to their hearts and expertise. At that time a typical web developer at least had knowledge of PHP and Javascript.
What we’ve noticed during researching various languages is that almost all actions done by the catalog service will boil down to the following paradigm:
- Execute a HTTP call to fetch some JSON
- Transform JSON to a desired output
- Respond with the transformed JSON
Actions that easily can be done in a parallel and asynchronous manner and mainly consists out of transforming JSON from the source to a desired output. The programming language used for the catalog service should hold strong qualifications for those kind of actions.
Another thing to notice is that some functionalities that will be built using the catalog service will result into a high level of concurrent requests. For example the type-ahead functionality will trigger several requests to the catalog service per usage of a user.
To us, PHP and .NET at that time weren’t sufficient enough to us for building the catalog service based on the requirements we’ve set. Eventually we’ve decided to use Node.js which is better suited for the things we are looking for as described earlier. Node.js provides a non-blocking I/O model and being event driven helps us developing a high performance microservice.
The leap to start programming Node.js is relatively small since it basically is Javascript. A language that is familiar for the developers around that time. While Node.js is displaying some new concepts it is relatively easy for a developer to start using it.
The beauty of microservices and the isolation it provides, is that you can choose the best tool for that particular microservice. Not all microservices will be developed using Node.js and Elasticsearch. All kinds of combinations might arise and this is what makes the microservices architecture so flexible.
Even when Node.js or Elasticsearch turns out to be a bad choice for the catalog service it is relatively easy to switch that choice for magic ‘X’ or component ‘Z’. By focussing on creating a solid API the components that are driving that API don’t matter that much. It should do what you ask of it and when it is lacking you just replace it.
Many more headaches to come later this year ;)3 -
This is just me throwing out my thoughts from the past few weeks.
edit: this is long
> Working on a C# project. its going well Its teaching me a lot about SQLite and file IO. I'm having a lot of fun with it, even the debugging as much I want to slam my head on the wall but I'm not asking for help so far and I'm very proud of myself because it feels so much better. like I don't mind asking for help but its so much more rewarding and I learn more from it.
> I need portfolio of software I can show off to employers and the current project I'm working on is the first programs in the portfolio. The place I want to apply to uses C#, but I still wanted a few other programs in other languages such as Python or JS just to show what I'm capable of.
> I was looking at what ASP.NET Core offers and it impresses the fuck out of me, and confuses me. The parts that confuse me, like for example the normal asp webapp is a very impressive hello world app. and it has so many different files and such but how or what do they expect me to add? how am I supposed to work with it? and if I delete any files I don't need (the premade js, bootstrap, jquery, html, and css) it produces errors because of the project files are pointing to those. and i know I can use the empty project (I do) but does that question my ability as a dev since I don't want to use it for my projects?
> On that note I love using Intellisense and debuggers and auto complete and I can go without them I just don't want to rely on them. idk I've just been a little more stressed these past few weeks.4 -
I fucking cannot stand CMake. I hate this stupid fucking piece of software. I've been trying for 3 fucking days to get SDL2 to link just once and I cannot. It doesn't work in the slightest.
Every time I look for help I find a Stack Overflow post from 5 years ago about someone having the exact same problem and all of the responses are "This function is deprecated, use this instead"
THAT DOESNT SOLVE MY FUCKING ISSUE
WHY DOES CMAKE DEPRECATE THINGS EVERY 1.5 YEARS
THIS ACTUALLY MAKES ME WANT TO SWITCH TO INTERPRETED LANGUAGES I CANNOT STAND BUILD SYSTEMS
SURELY IT CANT BE THAT HARD
WE HAVE OPERATING SYSTEMS, AERODYNAMIC SIMULATIONS, AND A GLOBAL COMMUNICATIONS NETWORK BUT WE CANT FUCKING PASS COMMANDS TO GCC PROPERLY?????6 -
Gave me a career when I wasn't looking for one. Graduated with a mathematics and Management Science double major. Started as a data analyst and a Java architect saw something in me and gave me a shot. He was a dick at first and we had a minor squabble in which I defended myself and I thought I was done there. I later apologized and said I didn't have to because I was sticking up for myself.
I hated programming in college. Found it boring and thought I could teach myself if I wanted to. So in the real world, the problem solving and the variety of languages and software to work on opened up my eyes and allowed me to follow though my career.
For that I get a sweet paycheck, tons of opportunities and my children get to have and do things I never had the opportunity to do as a child. -
IMO, music plays a vital role in writing software for me. Without it I can’t get into the “zone”... or as I call it the “grove”, because I don’t really zone out.
I have different genres, songs, and playlists for different situations and languages.
I also, begin to type to the beat of the song.
I have been known to put a song on repeat for hours to lose track of time.
Have a standup desk has really helped with concentration, as once I’m in the grove, I will start moving around to the beat as I work.... It seems like a distraction but it helps.. maybe I’m just ADD.. lol 😂
Anyone else do the same of some sort? What gets you in the grove?11 -
Tldr; Rust community could definitely be way less annoying, but it's way more annoying listening to everyone bitch about it all the fucking time.
rant()
Tired of the Rust hype? Too fucking bad. Quit complaining that people like well-designed languages more than shitty ones. Yeah, rust devs can be real fucking zealous, but at least the language is good. If you don't like listening to people say "why not rust?" ignore them or ask yourself the same fucking question ahead of time so you don't feel defensive when someone asks it later.
Read some shit about how "it doesn't matter what you build it with if the software is good, its all the same". Ever heard of "right tool for the right job"? Rust has applications all over the place, so people are going to talk about it a lot. Also, just no. Like, Python shouldn't be in the Linux kernel for a lot of reasons, so the tools you choose can constrain whether or not your software is actually "good."
Ever heard of "unsubstantiated trust"? Yeah, you might be good at writing C, but you can get that shit to compile with nasty fucking problems and C's a straight up foot gun in my hands. It's hard to write shitty functioning Rust that does what you say it does, which is less unsubstantiated trust.2 -
Listing my skills:
I have published react-native apps.
I can build an extensive backend/API thing with node.JS/a good framework.(worked on something for my countries national football league during an internship as main/only dev)
I have some experience with c# but havent used it since school.
I have no issue getting into new frameworks/languages, as long as its not PHP.
I have experience working in software teams.
I have experience running my own company(Online store selling airsoft supplies - i quit).
Im working towards getting familiar with Tensorflow 2.0.
I have a Cambridge English assessment certificate at grade C2.
I am currently working(for 0 pay for 50% of the shares) on developing a social media app that uses location tracking on a 20-200 meter scale.
I have ADHD and have been spoken on/warned due to its effects( i.e. forgetting to report progress, getting distracted, needing stimulation so i browse youtube(even have it playing in the bottom corner sometimes), poor communication.
Am i worth anything at all as a developer... im getting pretty depressed due to not having an income at this point... and I dont think anyone will hire me4 -
Does anyone have any tips on how to test a software developer for problem-solving skills and learning capabilities?
I don't really care if the developer knows frameworks and languages XYZ. I want to know if he/she can learn those things, knows how to find answers to problems and actually tries to do a good job. Those seem the most valuable skills to me.
Any suggestions?5 -
Half of the courses we had in our college were about electronics. Except Microprocessors and Transistors, it's not relevant.
We even had chemistry and engineering drawing. So we essentially wasted more than half of our time.
Besides languages, weren't taught anything about real world software development.
Nothing about how to work with an existing code base, version control, design patterns, system design, creating a website, debugging, functional programming, scalability, reliability.
The industry should be involved in setting the syllabus and also contributing part time teachers.3 -
Being fairly new to the software game I’ve yet to tried my fair share of languages, both at work at a professional level and small to medium sized projects at home. I’m now starting to see patterns and different features in languages, and I must say that Rust is a language that blew me away totally.
I read the online book and then I wrote a few small programs. It feels super modern with all the cool features and it’s so fast. The threshold can be high, depending on your background.
I’m no pro using the language at all, but I enjoy it so much. I urge you to try Rust for your next project. The community around the language is also very interesting and welcoming.
What are your experiences with Rust?3 -
https://spectrum.ieee.org/computing...
I agree with Python being very useful due to library availability. Not sure what I think about C beating out C++ though. I would much prefer programming in C++ to C any day. I don't like Java, but a LOT of people use Java.
I find it interesting that a lot of people talk about Rust, but I am not seeing it in the top 10. Is it just too new?
What I find most interesting is that this is a good list of languages to learn. These are what are being used in the field. Well, at least from the the perspective of IEEE.
Thoughts?5 -
2019 Dev Resolutions
- Learn the rest of the languages I want to use
- make a game
- make money off something I program
- contribute to a project
- learn and use git
- get a good schedule for programming
- use a few languages in one project
- be better than I am now
- not be so hard on myself
- publish software/website/game -
!rant
Experienced devs please tell help me.
Learning software development has been a challenge. Many times it's frustrating.
I also learn languages and I find them to share one trait with software development, which is complexity.
At first I looked at languages the way I'm currently doing with software. I'd look in a new language and after decided it's cool to learn it, I would stare at it for a few weeks trying to realize what the heck I was going to do. I wouldn't even know how to get started.
Eventually this stage goes away and I think that is about to happen with me with software.
But then a new challenge would come, which is me not making progress as I wanted. That's sort of happening with me by learning software as well, bit in language I now know how to deal with it.
That's because I work full time with something that isn't in my interests and when I arrive home Im tired and want to relax. So I decided my language learning had to go slower as long as I have this job, meaning no hours spent in front of books or a pc studying - that's what I could do with English, I was a teenager and had 12 hours a day to do whatever I wanted.
So I usually spent 5 minutes here and there learning something in my target language when I can, no frustration needed, my only rule is: practice everyday, even if I don't learn anything new.
With software, that doesn't apply though.
So, what I mean by tracing a parallel between these to fields is that I have a strong conviction is that once you get the principles on how a certain kind of learning works, you can apply it everywhere in the field. But with software it's been harder.
Anyways, I see that are some principles that apply, cause trying to learn software is changinge and teaching a lot of things like:
*you have to read a lot (of documentation) . At first I thought all documentation was painful to read and understand, but I found out some software are well documented and one can use those only to get used with it.
*immersion / discipline are important. I'm not very disciplined, I'm better with immersion but both are important if you need to acquire complex subjects/skills
*how to deal with complexity. I installed Arch Linux a few days ago. Just to install it I ended up reading more than 20 pages of documentation (install guide, Wpa supplicant, systemd, networkd, xorg, etc etc). Gradually I'm realizing that when you have to install/tweak something in that distro you necessarily spend a bunch of time trying to understand how it works, otherwise you don't get too far like in Ubuntu or Debian.
*and lastly the one that bothers me. Constantly getting frustrated and feeling crap about my poor skills. No matter how much I progress, it still seems like I'm stuck.
(that's when I ask your help/opinion :) )4 -
Gotta question about the job market,
I'm having a very tough time getting a job, still jobless from when I quit my job awhile back, anyway all the jobs I look up that contain the words software/android/app/java developer seem to include web development skills.
Something of which I don't know much of, I wouldn't mind learning sure but for things like android development I can use Java just fine to create apps, yet the moment I start reading they want developers that know react.
Is this a normal thing? I can get to learning new languages and all but it'd be sad if my skills in Java for both software and app development are never used once I join that company.
Forgot to add this is for New Zealand job market, not sure it's normal for other countries.3 -
I just want to ask fellow Developers here, can you give me a reason why you have to adjust to standards given by frameworks and not to create your own framework because thats just recreating the wheel?
I want to be enlightened as sometimes i tend to be hesitant in learning new frameworks/languages because i find them over-complicating the process on creating an app/software.5 -
I know this question has many individual answers based on opinion but:
What do you think are the Top 3 languages for writing interactive software?6 -
I saw some game maker software (Klik & Play for the nerds), in a super market budget section and pestered my mum to buy it for weeks, got it, after a year of playing about started to read and found out about for loops & functions..... My software didn't have these as it was just creating actions for game events, very limited... Realised my games (if you could call them that) could be so much better with more control and started to look into languages like BASIC, the rest is my history :)
-
First semester tutorials are fun (spoiler they can be frustrating).
Today my University held an entry level tutorial for LaTeX, which I had already visited a year ago and offered to help and boy ohh boy was that painful. For your information all of these students want to study computer science.
From around 50 people there was only one person who used Linux and I thought "Well at least one".
I was even more impressed as the other tutors asked me to help her because she used Manjaro (also the distribution I use).
As i helped her installing texstudio (the software presented) I needed her to enter the root (?) password and she answered "Which password, it's the laptop of my sister, I thought the laptop had windows installed".
Everything worked out fine but this was only the beginning.
After an hour came the first exercise in which the students had to build a simple document and for everyone who doesn't know LaTeX, it's a markdown language which heavily relies on \ and {}.
And there laid the other most common problem, some Mac users didn't even know how to write a \ or {}.
At least I had some fun helping them but if you want to study computer science you should be able to know how to write some of the most common symbols in programming languages. -
So today my teacher told me to do that project for some competition or something(frankly, I don't remember clearly what this is for). He gave us the machines we need, the CDs with the systems we have to work with. We are supposed to make a properly working Beowulf cluster from the things I've been given.
Well, no.
Fucking no.
I am really okay with making this the way my teacher wants us to do. I am okay with installing an ubuntu 16.04 server that is completly irrevelant to the project, because it's not part of the cluster. I am really okay with using some weird linux distribution on the master nobody has ever heard of. But I'm not okay when the software we've been given(including operating system) has seven pages of documentation, escpecially when fucking screenshoots of how PXE booting should look like are roughly 70% of it. No, I couldn't find a thing on the internet about it. I couldn't read the fucking manual. There was no fucking manual. There was no fucking --help. There was no motherfucking english language. Everything was motherfucking spanish, including that 7 pages long document that was supposed to guide us through our work. It was planned to be done until march. The only reason I can think of about why doing the stuff the document tells us to do would take four motherfucking months is that we'd have to learn spanish to do this. And I'm not going to do that. Not because I don't like spanish or learning. Simply because I didn't sign up for this to learn languages.
And no. I can't switch to other, human purposed software. I am only allowed to use the things the teacher has given us. Because somebody has worked on it already couple of years ago and they had left a pdf file about how to install that ubuntu server I've been writing about a while ago. Which, by the way, was the "installation guide for animals". Showing how to install a system, screenshoot after screenshot.
It took about an hour to figure out the thing supposed to handle pxe booting computers all the time was telling us that it can't work because we had to configure ethernet interface manually. Because why the fuck not. -
!rant
Hi fellow DevRanters! I've been studying software engineering for a while now and, while I love programming, I'm starting to think that all I'll be doing as a software engineer now a days is pulling data from a database, sticking it in a nice gui with some buttons and moving on to the next, similar, project. At the same time I am loving linux more and more, I love working with bash and other unix-like tools and I am interested in systems languages like C and Rust. It is for these reasons that I am playing with the idea of switching to Systems and network engineering. What are your thoughts on this? Is Systems and network engineering a field in which I get to program a lot? Will there be more variation in it? Is my view of software engineering completely off? Please share your thoughts and opinions! -
How to write programs on Android 10 that work with files/directories? Have used a number of JVM-based languages like Groovy, Clojure and Kotlin.
My last try was with Groovy. I ran it under Dcoder which has to be cloud-, based as it supports numerous languages. I gave it permission to access storage but got a file not found error from Java. Copied this excerpt for the file path.
import java.io.File
class Example {
static void main(String[] args) {
new File("/storage/emulated/0/read_file.grvy").eachLine {
line -> println "line : $line";
}
}
}
Do I need root? Do I need to change file permissions using Termux? Why can't I find a way to write simple software on a Motorola Super, 3 GB RAM and 8 cores? I hate using a phone for a computer but a seizure has me in a nursing home with only one usable hand.
Any help is greatly appreciated.5 -
I think I just realized what my biggest gripe about our career paths that I hate the most.
This is something that has worsened over time, especially the last 2 to 3 years.
As developers, we have far too many options. Some of the most powerful apps are written with languages that have hard, and I mean HARD, guardrails in place. If the app is written in a language that does not meet this criteria usually a framework has been used to install those guardrails.
We just get our minds so wrapped around the possibilities and the opportunities in the software, that we just can't focus on the end result. We're like puppies that are excited about something and we just piss all over everything.
In my career I have met far too many developers that don't have the capacity and mental fortitude to take control of their actions. Because of this I think the only way for us to stop this corruption, that I feel we are nurturing, the solutions/services that we use need to push back on us and install those guardrails for us.
All this came from a change that Microsoft put in place that seems well intended, but introduces yet another choice and a multitude of opinions in how you release code.
It used to be a simple check box. If it was checked it was pre-release, if it was unchecked it was a production release. That's it. On or off. The simplest choice you ever needed to make on a release.
Now though, there are two check boxes. One for a pre-release and one for a latest release. You can also not check either for some "ephemeral" release? So now something as easy as on or off has been made into a difficult decision on how this works within my pipeline. Now every time I make a release I have to ask myself, "which one do I check?"
I shouldn't need to spend more than a second to identify a path forward on simple shit like this, but here we are with a third choice.
Can we just stop overcomplicating shit?6 -
!Rant, but something I wanted to share.
I started as a placement software developer on Tuesday, and yesterday I was working on production stuff.
Admittedly, it's an admin dashboard so it doesn't need to look great, but man, trying to get bootstrap tabs to switch and display a div with the charts we want on it using angular was a time and a half!
Despite being overwhelmed with information, and being mostly out of my depth developing in JavaScript (my main languages have been Java and C++) I'm having a great time, bar the 6.30am wake up time! :D -
TL;DR I just recently started my apprenticeship, it's horrible so far, I want to quit, but don't know what to do next...
Okay, first of all, hey there! My name is Cave and I haven't been on here for a while, so I hope the majority of you is doing rather okay. I'm programming for 6 years now, have some work experience already, since I used to volunteer for a company for half a year, in which I discovered my love for integrations and stuff. These background information will probably be necessary to understand my agony in full extend.
So, okay, this is about my apprenticeship. Generally speaking, I was expecting to work, and to learn something, gaining experience. So far, it only involved me, reading through horrible code, fixing and replacing stuff for them, I didn't learn a thing yet, and we are already a month in.
When I said the code is horrible, well, it is the worst I have ever seen since I started programming. Little documentation - if any -, everywhere you look there is deprecated code, which may or may not been commented out, often loops or simply methods seem to be foreign for them, as the code is cluttered with copy paste code everywhere and on top of that all, the code is slow as heck, like wtf.
I spent my past month with reading their code, trying to understand what most of this nonsense is for, and then just deleting and rewriting it entirely. My code suddenly is only 5% or their size and about 1000 times faster. Did I mention I am new to this programming language yet? That I have absolutely no experience in that programming language? Because well I am new and don't have any experience, yet, I have little to no struggle doing it better.
Okay, so, imagine, you started programming like 20 years ago, you were able to found your own business, you are getting paid a decent amount of money, sounds alright, right? Here comes the twist: you have been neglecting every advancement made in developing software for the past 20 years, yup, that's what it feels like to work here.
At this point I don't even know, like is this normal? Did git, VSCode and co. spoil me? Am I supposed to use ancient software with ancient programming languages to make my life hell? Is programming supposed to be like this? I have no clue, you tell me, I always thought I was doing stuff right.
Well, this company is not using git, infact, they have every of their project in a single folder and deleting it by accident is not that hard, I almost did once, that was scary. I started out working locally, just copying files, so shit like that won't happen, they told me to work directly in the source. They said it's fine, that's why you can see 20 copies of the folder, in the same folder... Yes, right, whatever.
I work using a remote desktop, the server I work on is Windows server 2008, you want to make icons using gimp? Too bad, Gimp doesn't support windows server 2008, I don't think anything does anymore, at least I haven't found anything, lol.
They asked me to integrate Google Maps into their projects, I thought it is gonna be fun, well, turns out their software uses internet explorer 9.. and Google maps api does not support internet explorer 9... I ended up somehow installing CEF3 on that shit and wrote an API for it in JS. Writing the API was actually kind of fun, but integrating it in their software sucked and they told me I will never integrate stuff ever again, since they usually don't do that. I mean, they don't have a Backend as far as I can tell, it looks like stuff directly connects with their database, so I believe them, but you know... I love integrating stuff..
So at this point you might be thinking, then why don't you just quit? Well I would, definitely. I'm lucky that till December I can quit without prior notice, just need a resignation as far as I can tell, but when I quit, what do I do next? Like, I volunteered for a company for half a year and I'd argue I did a good job, but with this apprenticeship it only adds up to about 7 months of actual work experience. Would anybody hire somebody with this much actual work experience? I also consider doing freelancing, making a living out of just integrating stuff, but would people pay for that? And then again, would they hire somebody with this much experience? I don't want to quit without a plan on what to do next, but I have no clue.
Am I just spoiled, is programming really just like that, using ancient tools and stuff? Let me know. Advice is welcomed as well, because I'm at a loss. Thanks for reading.10 -
It's actually funny, as I shared equal passion for the English language and technology( how and why things things worked), with software engineering being the preferred choice.
I started studying practical software engineering, which basically only teaches the fundamentals of a select languages, like C, C#, JAVA, PHP and SQL. Had to teach myself PHP and MVC development for my end project.. So I turned to google and youtube. Great experience so far :)
PS: sometimes I wish I studied English instead! -
TLDR: Opinions of area of interest between these subjects (specializations):
1 Algorithms
2 Programming languages
3 Business analytics
4 Pervasive computing
Hi, I'm about to choose specialisation of my software development masters. I'm almost certain what I'll go with (algorithms), but I wondered what other people thought and would choose if they had the opportunity. I'm still not too experienced in all of these areas, making the choice a bit hard :-)2 -
Question: What tools/software do you use to write API documentation of applications with NodeJs back-end (assuming that you can not use tools like ex: sweager for weakly typed languages)?2
-
Will someone post a list of everything I should learn and in order.
I want to be a software engineer. I'm learning android app development now. And I'm a complete beginner. I also want to be a full stack developer. Also what's the difference between software engineer and developer? Which languages should I learn?6 -
Software Installation happens through "point and click", also does system configuration and infrastructure. Servers are _pets_ and get reused and re-purposed after decommissioning. Command Lines, Terminals and scripting languages are buh and scary; We don't use them. Repetitive tasks are good, because once you know them you can do them faster and better. Windows servers are good, because we want to be like Microsoft ...2
-
!rant
Software development has acquired some interesting jargon over the years, but I keep wondering if other languages and cultures have commonplace expressions for what can be translated as "improvisation-oriented programming" or "hammering code" (i. e. hacking something in a brutish way) -
Hey everyone, need some advice here. To give some background, I am 17 years old, and currently residing in New Zealand. I love software and have my career path set on being a developer, most likely full-stack web. (Windows/native development & Game development I wouldn't mind either). I would say I am confident in JavaScript (incl. TS), web-dev languages (HTML & CSS) and Python. And with less experience, but a strong interest in Rust, C# and C++. I plan to go to my local university to study Computer Science. Because of factors like my age, location, lack of previous job experience and degree(/s) make it hard to meet any requirements for the few jobs available locally, or even remotely. Anyways, what have you done to get where you are today or what would you recommend based on my current background? My main goal is to get my foot in the door than to "have money" or "be occupied", so if other paths like certifications or more temporary contract-like work (similar to Fiverr) is a better idea then let me know.2
-
Bsc Computer science (I've seen the maths in that course,it's a bit crazy but the programming modules is what I love)
or
BCom information systems (less complex maths,not much programming and a lot of finance and business based modules)but I can take a post graduate straight up programming and software dev course after that
Or
BTEch IT applications development(very practical experience on programming languages) plus in my second year I get industry experience.
Confused
Which one??1 -
I'm graduating soon from a college, and tbh I only had internships in web development. I really want to land a job when graduate next summer... But it doesn't seem I match any of the job descriptions, the skills the companies want. I don't know what's the next step, should I find a low skill cap job and teach myself the languages in the part-time? what did you do to land a software engineer job when you first graduated?3
-
I'm curious about where have you learned coding? I had learned Java most of my life, in a university course since the age of 15. It was a special programming course for high school students and out of 6000 students who applied I was one of the lucky 50 that got in after 3 huge tests in logical thinking and math. This was the path I took to have this job now as a full time software engineer. I'm interested to know how all of you guys learned programming and when have you started. Feel free to tell about apps or programs you use as I'd like to further increase my knowledge in other languages too ☺4
-
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 -
If you've ever had to do hiring (technical side) of new software developer\s, the seniority in terms of working years is the most valuable criteria for you or the hiring department, or there's else?
On my side I'm a software developer from around 1 year and here (in Italy) your price is, from what I've seen, based on the seniority in terms of time, rarely actual skills\adaptability.
I'm good as a full stack developer and I'm proficient in adapting\learning to-new\new skills about new languages and Frameworks.
Soon I'm leaving my underpaying job with good output from my work\projects, but I'm faced with this seniority nonsense that makes most of the recruiters silent because the new price is similar of someone with high seniority, and I'm kinda tired of this, so I'm here to hear your thoughts about this. -
I have to deal with the hardest part of programming: naming things! i fucking hate it, being so incredible uncreative finding a name for a side project..
So heres my idea: I want to build a little cli tool (and probably in the future an app or a web interface) with a rest api on my server for simple storing text snippets. I will be a simple key value store, but my goal is experimenting with new languages and software ;)
I can't imagine a cool name for that thing, do you have an idea? :)3 -
How can a novel emerging challenger software (written in Rust) take me 4 hours to install (still ongoing)?
Today I have decided to give Pijul a go. Pijul describes itself as a theory-sound alternative to Git, which I have wanted to get away from for a while now, due to various reasons -- many of which I saw Pijul advertise to have solved on design level.
So I set away a day to learn Pijul, today. Well, 4 hours after I sat down -- after a number of hilariously wonky failures of "Rust ecosystem" to do the right thing as I had to install Rust with some shell one-liners those insane wizards recommend for installation process (all in the name of "stability but not stagnation") -- Pijul has now been installing with the blasted `cargo` for an hour now (that's after 3 hours of getting to the point where `cargo install pijul` stopped exploding in my face) -- telling me I only have 40 crates more to install. Are they throttling me, perhaps? I don't care -- I should have been installing Pijul from a repository in accordance with my Linux distribution, or -- at worst -- download a BLOODY COMPILED PROGRAM IMAGE.
What is it with the hipster developers today? Everything they get of tools, they subsume and churn out intricate complexities the likes of which we hadn't seen yesterday. Tell me fellow developers who think installation of your software has to require three and a half novel "installation solutions" to which I can't be arsed to be made privy -- do you think your life today is easier than, I don't know -- wrangling with a Makefile and a C compiler (which today thankfully can do rather good job of standards compliance)?
I mean I wouldn't mind Pijul being written in Rust -- but it turns out Rust's advertised elegancy in practice is wrapped in so much "giftwrap" I feel like what desire I had to learn Rust myself, I'll stear well clear.
Here's an advice for developers in general -- an advice continiously ignored for decades -- stop blowing your original scope of delivery in auxilary packages you think you need to reinvent just because you can or because your mom is out of town! For programming languages like Rust this most certainly entails NOT writing your own package manager, with its own package delivery mechanism that has its own configuration file format and virtual machine to configure dependency resolution or what have you!
You wanted to write a programming language that has novel features you think we need? Fine -- write one and stop there. Watch it grow, and watch people who are busy working on other parts (scopes) of software to integrate your offer.
What a shitshow. Stop smuggling alternative package managers, installers, and discombulators with your actual product -- I only want the latter, I don't want the rest of your damn piping, walls, roof and a cathedral on top of it!
Don't be that guy starting with a pin, and ending up with a fucking diorama miniature of a pig farm in Netherlands. Jesus.7 -
We get our degree from a high-end higher education institution and with it we have proven that we studied Computer Science and a number of important programming languages in-depth.
Now why is it that when we get a job as a Software Developer, that people only seem to value you if you get industry certificates in those programming languages?
I understand a degree forms the basis with which to tackle modern-day software problems, but for your entire education to be practically invisible to stakeholders? That's what seems strange to me. We are valued by the number of certificates we have? Something doesn't add up. The only reason for this I can see is that the Business department hasn't had the thorough STEM education we had and thus thinks we are still novices who need to get 'trained'.2 -
This post is going to be long and it might not be the platform to ask for it's mainly for ranting yet I wanted to ask a non toxic community.
I'm mainly an ABAP programmer working on an SAP system for my living. No matter how people inside the SAP sphere look at it, it's not exactly cutting edge technology in the world of software development. (and in my opinion it's not even a knife)
As I work in an enterprise environment I have trouble about finding gaps where I can learn newer technologies and thus, I've decided to learn in my free time.
I tend to tilt toward web development as do many I know because I see potential in the GUI which HTML and CSS achieve. And I do believe that combining that with languages such as JS, Python, Ruby, Erlang and Elixir can give way to a healthy experience both in Web development and even desktop development.
In order to avoid overwhelming myself I wish to start with learning web development. Time is not of the essence because I plan to continue working with ABAP for close future, around the next 2 years, and I'm young.
I wanted to ask the community, is there any developer in here that was in the same position and can give out some pointers to the path they took? Is it wise to start my path from HTML5 and CSS3 without looking back to the older ways? Any resource you'd share will be welcomed.1 -
Hellow devRant community, I would need you, I need translation into various languages for my latest software, it's free for everyone and if you have a little free time and you know it in one language, I offer to help me :) : https://github.com/72y9op/aliaz
-
How did you decide what you wanted to do with your career? I'm fresh out of uni and am looking for work but have no idea what roles or languages or software types I want to work in, only a vague idea of stuff I don't want and a vague idea of what could be nice. I'm also at a bit of a crossroads because I've applied to multiple very different jobs and have no idea which one to accept if multiple offer me a job (given that there weren't any red flags when interviewing).1