01572
This may not be obvious to everyone writing software. Or maybe authors today just do not care. They are too busy chasing users.
As for the later some who would call themselves "hackers", I wonder: Did the original "hackers" from whence the term was taken have such ambivalence and accept what was made for them (including "platforms") fully knowing that it meant lock-in?
Thwarting "hackers" from making things for themselves may not always be obvious today because in fact some of these "institutions" are set up by organizations who desperately need developer contributions.
As long as they can take the contributions and use them to generate revenue or mindshare for the organization, they appear to be encouraging people to make things... but only if authors agree to jump through hoop after hoop.
"Instituition": Want access to our pool of end users? Jump!
Today's so-called "hacker": How high?
But what if the "hacker" does not plan to share his program with end users? What if he is writing it only for himself?
What is the purpose of making such an author jump through any hoops? How does that serve the author in any way?
Is there anyone selling a reverse-engineered, refillable pod for the coffee machines that only accept pre-filled proprietary ones?
Do these coffee machine vendors seek to use patents to protect their sales of coffee?
Edit: I know Keurig and Nespresso are the well-publicised examples, but I was thinking of the others. I assume with reasonable confidence there are others still using non-refillable proprietary pods.
I have long believed the weekend HN crowd is wiser than the weekday crowd.
I have also believed that CS may contribute to the urge to write "complicated software". Your admission reinforces this belief.
I like software that tries to avoid complexity. Any lazy person can write a complicated program, get it to compile and run. The world is full of such software. Consequently, it is nearly impossible to avoid. But that is different from consciously selecting it and we cannot infer that usage under these circumstances implies approval.
rk dewar, dmr, djb, a@kx, etc. none of them majored in CS as far as I know. Despite the lack of a CS "education", I still value and rely on what they produced. I consciously seek out such work.
The point of my comments is simple: a CS degree is not a prerequisite to writing great software. Call that a strawman if you like. I still think it is a point worth making when someone is blogging about low numbers of CS grads.
Of those CS majors who write software, I see others with no CS degree, e.g., PhD in maths instead, who write better software. Conclusion: ?
Difference between earning a masters in Economics and actually needing that knowledge to do one's job at Salomon Bros. If the degree was needed for the knowledge it provided (versus window dressing for interviewers or clients) then I certainly missed that part in Liar's Poker because I recall the book arguing exactly the opposite. Back in those days I had a friend who was a Philosophy major and was extremely successful on Wall Street.
I use TCP/IP but I did not choose it. There were many competing protocols. It just became the default.
I am not going to argue about this but many of the folks who wrote the software that I actively seek out and value had degrees in Electrical Engineering, Mathematics, and/or Physics. I might use different software than most users.
The authors were not CS majors. It is what it is. Maybe this means nothing. But to me it means, at least, CS is not a prerequisite.
I am not denying the contribution of Computer Science as a field or the work computer scientists. And I understand why kids major in CS. All good.
I am just referring to the practice of writing software. I would question anyone who argued one must have a CS degree to write great software.
Whereas I have found such software on multiple ocassions written by mathematicians or persons in some other field, e.g., physics, etc.
As a user of software, I do not believe that a computer science degree is of any significance in terms of the ability to write good software.
The blog post makes a comparison to Liars Poker. Perhaps it should be noted that the author of Liars Poker majored in art history. It was not necessary for him to have a particular degree in finance to do his "job". That was the point of book.
The question to ask today is whether one needs a degree in CS to write good software.
This truth is often hidden by some given abstraction.
(file, save, download, streaming, etc.)
Businesses have been built on such abstractions. Success stories.
On the flipside, existing businesses that were built before the internet who do not know the truth have been fed these abstractions. These businesses may stand nothing to gain from participating in the copy machine. Whomever is feeding these businesses with abstractions that hide the truth are not helping these businesses. They are helping themselves and watching these businesses being destroyed by a copy machine.
libnet-based modular utilities that can be used in shell scripts:
http://nemesis.sourceforge.net/docs.html
Also, earlier was nc-data. Slow but allows constructing any packet from the command line. Not limited to known packet formats.
Let us hear your criticisms.