Live data from Hacker News

Software Engineering's Greatest Hits [video]

youtube.com

1–10 of 44 posts

Re: Software Engineering's Greatest Hits [video]

#3
> Perl is as hard for novices to learn as a language with a randomly-designed syntax

Make something accessible to novices IMHO is a wrong goal in many cases. A tool like a programming language used day to day for many months or years. What important is how efficiently you can use it after spending enough time to learn it (I would say a month or two should be enough for most languages if you know already a few, but it depends).

Of course we cannot ignore how hard is to learn a language otherwise we will have languages like C++ which require years to master it (and even coders with years of experience fall pray to numerous hidden traps of the language).

Re: Software Engineering's Greatest Hits [video]

#5

> Perl is as hard for novices to learn as a language with a randomly-designed syntax Make something accessible to novices IMHO is a wrong goal in many cases. A tool like a programming language used day to day for many months or years. What important is how efficiently you can use it after spending enough time to learn it (I would say a month or two should be enough for most languages if you know already a few, but it…

An interesting research question would be if the things that make it harder for a novice to understand code are exactly the same things that make experts more productive. Curly braces was used as an example in the talk, and for me at least they are very useful to understand code structure. I still remember that one of the hardest things for me to get started with in Java was the seemingly endless types. There was a general overload with phrases I had never seen before coming from Python. While I am not too strongly opinionated on static vs. dynamic typing today, static typing is very popular among expert programmers.

Re: Software Engineering's Greatest Hits [video]

#6

> Perl is as hard for novices to learn as a language with a randomly-designed syntax Make something accessible to novices IMHO is a wrong goal in many cases. A tool like a programming language used day to day for many months or years. What important is how efficiently you can use it after spending enough time to learn it (I would say a month or two should be enough for most languages if you know already a few, but it…

An interesting research question would be if the things that make it harder for a novice to understand code are exactly the same things that make experts more productive. Curly braces was used as an example in the talk, and for me at least they are very useful to understand code structure. I still remember that one of the hardest things for me to get started with in Java was the seemingly endless types. There was a g…

The best explanation for Java language design I have heard that it's not designed to be productive but to prevent mediocre developers from shooting themselves in the foot.

Re: Software Engineering's Greatest Hits [video]

#7
post #6

Earlier quoted context omitted.

An interesting research question would be if the things that make it harder for a novice to understand code are exactly the same things that make experts more productive. Curly braces was used as an example in the talk, and for me at least they are very useful to understand code structure. I still remember that one of the hardest things for me to get started with in Java was the seemingly endless types. There was a g…

The best explanation for Java language design I have heard that it's not designed to be productive but to prevent mediocre developers from shooting themselves in the foot.

And yet, the Enterprise Java meme.

Re: Software Engineering's Greatest Hits [video]

#8
I was very impressed by Greg Wilson's 2009 presentation, which seems to have disappeared from Video, but I think corresponds to these slides: https://www.slideshare.net/gvwilson/bits-of-evidence-2338367

It truly changed the way I think about not just software development, but it changed my entire view of the world, which is more than I can say of any other presentation. Granted, I was still at a fairly impressionable age of 17 when I listened to it, but still.

Definitely looking forward to listening to this one too.

Re: Software Engineering's Greatest Hits [video]

#10

> Perl is as hard for novices to learn as a language with a randomly-designed syntax Make something accessible to novices IMHO is a wrong goal in many cases. A tool like a programming language used day to day for many months or years. What important is how efficiently you can use it after spending enough time to learn it (I would say a month or two should be enough for most languages if you know already a few, but it…

After the "toy" languages of Basic and Pascal, my first real programming language was PDP11 Macro-11 Assembly. At the end of that programming class, the final assignment combined all the prior assignments and to the entire class's surprise we had a C compiler. From that laying a foundation experience, I felt extremely comfortable when learning and working in C for a good 20 years after graduation. C++ appeared first as a pre-processor for C, and then took over as the primary compiled language with C treated as a less favored step child. Over the years, my experience has been those that tried to embrace the entire language shot themselves in the feet over and over again: template programming has always been unstable and difficult, operator overloading is a recipe for mistakes, and complex object hierarchies over designed to a fault. Nobody appears to follow the Keep It Simple Stupid (KISS) principal anymore. If there's complexity, it should be innate to the product, and not reflected by how to product is constructed internally. The portion of the talk where it is discussed how many parameters and features of software are never used hit my experience the sharpest. Keep Is Simple!!!
Post reply on HN