Live data from Hacker News

We will never have enough software developers (2020)

whoisnnamdi.com

441–450 of 553 posts

Re: We will never have enough software developers (2020)

#441
post #345

I think this article hits on some truths and gets a handful of things wrong. First, they are correct that we are in a dynamic profession that requires constant learning and expanding. No doubt the people who choose to stay in software are likely to be people who are curious, life-long learners where this is a benefit of the profession rather than a drawback. That said, one thing I noticed from teaching computer scien…

It's interesting because at least in terms of working professionals, of the most productive professions I've worked with, the ones who focus on "meta-level" concepts are usually the ones who overthink every detail and get very little work done and ultimately they are the ones who burn out. They tend to bike-shed details, take way too long to try to create sophisticated abstractions that never quite achieve the silver…

If your comment does anything for me its to show how terribly few words we have to discuss these things.

> "meta-level" concepts

I'd say having a strong grasp of what you can achieve with just using files and folder, or understanding how SQL solves en entire problem space are meta level concepts. Its just that we take them for granted.

> business value

Is apparently something different than 'value', but still includes every software ever that was valuable to a business?

> high level details

...?

> software engineering

Building constraint solver for a compiler or ensuring a JS animation centers a div?

> highly theoretical and focus on abstractions, design principles

I'd recognize all these things. But out of context 'in the general case' they become meaningless.

---

I understand the picture you are trying to paint, but i don't think it tells anything beyond "I've noticed people make things overly complex". I agree.

However, keep in mind the 'get things done and provides value' software you've seen: is the software 'that survived', might have been set up by a very experienced person ( whose failures we're not seeing ), nobody might recognize it as being not-simple ( e.g. I've seen high value business software partial recreate 'regex'. Worked great, straightforward and easy to read function, just ~50 lines or so, could have been a single function call. ), how the requirements are presented is hugely important.

Re: We will never have enough software developers (2020)

#442
post #299

Earlier quoted context omitted.

It feels bad too have a ton of structure, but the opposite is worse IMO. Single line tickets from the CEO that turn into months long projects with no guidance on the functionality. Engineers that burn down entire features because "it's bad code." Secret projects where you get berated for asking stakeholders to to clear up requirements because "you're scaring them." It's easy to look at a rigid structure and assume it…

You just gave a bunch of examples of problems that are in no way fixed by ticket bureaucracy, only hidden.

A lot of this thread boils down to "bad engineering is bad" and "bad management is bad". Not a lot of insight to be found IMO...

Re: We will never have enough software developers (2020)

#443

Earlier quoted context omitted.

This has to do with ownership and inheritance, not that SWEs are poorly paid laborers. Many software engineers are in the global 1% richest.

> Many software engineers are in the global 1% richest. I mean, some are, yes, but … I'm not, and I know many SWEs who aren't. > According to the 2018 Global Wealth Report from Credit Suisse Research Institute, you need a net worth of $871,320 ( https://www.cnbc.com/2018/11/01/how-much-money-you-need-to-b... ) I miss that cutoff. But if you narrow to my country, the requirement for being in the top 1% jumps to $11M .

Yes, I said global quite intentionally.

Re: We will never have enough software developers (2020)

#444

Earlier quoted context omitted.

I'm not sure what you even mean by an "in-depth definition." What I said is basically constitutive of a hashmap, it's place in the history of CS or whatever is not.

a not in-depth definition would be a 1 sentence definition of a hash map with probably give me an example of when you might want to use it. an in-depth definition would be that, followed by how you implement a hash map (thus if your language of choice already has a hash map, don't use that but show us how you would implement this classic data structure), how do you avoid collisions, maybe discuss some various ways th…

I don't think understanding how a hash map, an incredibly simple data structure used frequently, is all that "low level." If I really wanted low level, I would talk about having linked lists of arrays rather than a linked list of nodes so that you could benefit from fewer random lookups.

I work as an ML engineer, so very high level.

Re: We will never have enough software developers (2020)

#445
post #177

Earlier quoted context omitted.

> When German people in 1922 became angry because most jews had enough money for food, while many Germans went hungry Even if this were true, and it isn’t, people didn’t start believing in anti-Jewish propaganda because the Jews had more to eat than the average German. People always believed in crazy anti-Jewish propaganda since, at least, the first crusade.

> People always believed in crazy anti-Jewish propaganda since, at least, the first crusade. Absolutely they did. However, even at that time, it seems (if wikipedia is to be trusted) that the Jew's roles as bankers was part of the reason for the massacres: "Many crusaders had to go into debt in order to purchase weaponry and equipment for the expedition; as Western Catholicism strictly forbade usury, many crusaders i…

I am going to say that you sound a bit confused.

> But as we consider the inflation we are seeing today, try to imagine how it would be if the inflation is not 5-10% but 29500%

Hitler took power 10 years after the hyperinflation. People didn’t vote for the NSDAP because of hyperinflation, nor they started hating the Jews more than before because of it.

> You are absolutely right that antisemmitism didn't suddenly pop up in 1922, or even with the creation of the "Protocols" conspiracy. But prior to 1922, antisemitism probably wasn't worse in Germany than most other western countries.

Antisemitism was rampant everywhere in the West, the Germans only took it to its inevitable consequences and only after 1933. Of course, this doesn’t change the fact that nazis were criminals, but the Shoah has much deeper roots that the hyperinflation or some temporary unemployment.

For instance, only in 1870 Roman Jews became full citizens, before then they couldn’t own property and, among other things, once a year they were forced to run naked during the Roman carnival. This was only 60 years before Hitler seized power.

You can find similar stories about all cities that had a large Jewish community.

> The person that would say today, that "It's ok to punch a nazi." (meaning MAGA-republican), might very will be the person in 1923 thinking that "It's ok to punch a jew.".

No, it’s not the same thing because no MAGA-republican has been punched and arrested and they even elected a president.

Re: We will never have enough software developers (2020)

#446

I think this article hits on some truths and gets a handful of things wrong. First, they are correct that we are in a dynamic profession that requires constant learning and expanding. No doubt the people who choose to stay in software are likely to be people who are curious, life-long learners where this is a benefit of the profession rather than a drawback. That said, one thing I noticed from teaching computer scien…

It's hard to blame students when they look at job postings and all that they see advertised is positions for programmers using languages X, Y and Z, or when they see tweets and blog posts by hotshot programmers about frameworks A and B. The entire industry focuses way too much on 'experience with tool X' as a proxy for 'technical skill Y'. It's a bit like asking a carpenter how many years of experience they have with…

Closer to hiring an electrician certified in Australia to work in the US as a carpenter.

Give them six+ months to train up and I’m sure they’ll do fine.

Re: We will never have enough software developers (2020)

#447
post #430

Earlier quoted context omitted.

> please stop frigging saying it's the garbage collector and look at your crap for real lol Because if the garbage collector is the bottleneck you need to fix your code to not produce so much garbage.

The first issue I tackled at one of the jobs I had was slow JSP page performance. The code had some sizable chunks of JavaScript in Strings and looked at each authorization the user had. Its been awhile, but in dynamically generating that JavaScript (ICK!) it generated several megabytes of garbage Strings by doing `script = script + "little bit more";` way too many times. This was done for each page load. 8am and hun…

Must have been a long time ago. It's been almost a decade since that code pattern started getting compiled into calls to StringBuilder by javac.

Re: We will never have enough software developers (2020)

#448
I started programming in "high-level languages" like Pascal, Lisp, Smalltalk and Prolog. I then had to do a project in C. It felt clumsy at first. But then I got it, the pointer arithmetic, and I felt empowered by it. I felt "closer to the machine". The machine felt more like friend. I felt "C doesn't lie" because its computational model corresponds so closely to the hardware. Just saying most any language can be fun.

Re: We will never have enough software developers (2020)

#449

I think this article hits on some truths and gets a handful of things wrong. First, they are correct that we are in a dynamic profession that requires constant learning and expanding. No doubt the people who choose to stay in software are likely to be people who are curious, life-long learners where this is a benefit of the profession rather than a drawback. That said, one thing I noticed from teaching computer scien…

> When teaching undergrads I noticed immediately that a good portion of each student cohort was basically there because they were interested in making money in the future rather than exploring the ideas of computer science.

In my school, those who wanted to make money went straight to management or finance. Computer science was for the passionate ones and probably not the right path to make money for the brightest students.

Re: We will never have enough software developers (2020)

#450

Earlier quoted context omitted.

I'm not sure that's a like-for-like comparison and if those things overlap like that, it sounds wrong: - Ticket: Description of the requirement - Code: How it was done - Review: Peer-learning, change evolution - Unit test: Testing of implementation as understood by SWE - QA: Did the change match the requirement, did the SWE understand it? Is the outcome the right one? Each "item" should serve a distinct purpose, have…

- Ticket: AB-123 Increase the API maximum page size from 500 to 1000 - Code change: MAXIMUM_PAGE_SIZE -500 +1000 - Unit test: assert len(request[0:2000]) == 1000 - Commit message: Increase the API maximum page size from 500 to 1000 - Merge request: Increase the API maximum page size from 500 to 1000. For AB-123 - Daily scrum update: I've increased the API maximum page size from 500 to 1000, if someone could have a lo…

It's amusing to me that in none of these did you say why you were increasing the page size.
Post reply on HN