Miscellaneous Operating Systems/Hardware

Commodore 64 turns 30: What do today's kids make of it? - Page 2

hamei wrote:
So, Adrenaline ... since you've outed yourself, let me ask a question or two :
(flapping my arms about wildly) Danger Will Robinson, Danger!!

Oh, I guess he won't get that reference... :mrgreen:

_________________
Then? :IRIS3130: ... Now? :O3x02L: :1600SW: +MLA :Fuel: :Octane2: :Octane: :Indigo2IMP: ... Other: DEC :BA213: :BA123: Sun , DG AViiON , NeXT :Cube:
hamei wrote:
Adrenaline wrote:
Since I'm in the "current generation" of newer programmers, I figured I'd reply.

So, Adrenaline ... since you've outed yourself, let me ask a question or two :

Why are "developers" incompetent nitwits ? Go look at half the websites on the Internet. Put simply, they are nonfunctional shit. To extend that thought, much of what I have to deal with that's computerized is also semi-functional shit. Maybe that's strictly in userland but from what I've seen of humanity, it's unlikely that everything in userland is crap while everything in professional-land is wonderful.

If you'd like to know, I can tell you why many manufactured goods nowadays stink ....


I think the lack of caring and the pursuit of simply getting a paycheck (at least in the DC Metro area) is the reason for that. There's few and far between "good" developers, so the IT Consulting companies hire what they can, send them off to work on some client's "big" project and the new employee does just enough and maybe visually gives a decent job. While under the hood, it's the most spaghetti mess of code you've ever seen. The client doesn't know any better until they eventually hire either another vendor or an internal programmer and the consultant company reaps in the $100-$200/hr from the client to pay the $20-60/hr programmer. I've been on both sides of that equation. On one hand being the consultant looking in, learning the trade as I went along, looking back yeah I made some questionable decisions 6 years ago with how some things were implemented, but never a blatant disregard of quality/functionality that my co-workers at the time did. Now I'm an internal programmer looking back at the worst code I have ever seen and even telling my boss yesterday that we really need to set aside a month to start from scratch on the complete disaster that is one of our products. The sad part is that I originally architected it nearly 3 years ago, got put onto other projects and am now just going to "fix" things as the vendor couldn't figure the bugs out. In the process of "fixing" things, they made it look like a group of 15 year olds were learning C#.

So I am with you hamei, I have only met 1 other programmer in my area of the world out of the 20-30 I have worked with that I would consider a "good" programmer. Maybe other parts of the country (or world) are better, I don't know.

_________________
:Indigo: 33mhz R3k/48mb/XS24 :Indy: 150mhz R4400/256mb/XL24 :Fuel: 600mhz R14kA/2gb/V10 Image 8x1.4ghz Itanium 2/8GB :O3x08R: 32x600mhz R14kA/24GB :Tezro: 4x700mhz R16k/8GB/V12/DCD/SAS/FC/DM5 :O3x0: 2x700mhz R16k/4GB
smj wrote:
hamei wrote:
So, Adrenaline ... since you've outed yourself, let me ask a question or two :
(flapping my arms about wildly) Danger Will Robinson, Danger!!

Oh, I guess he won't get that reference... :mrgreen:

What's not to love about Lost In Space :)

_________________
:Indigo: 33mhz R3k/48mb/XS24 :Indy: 150mhz R4400/256mb/XL24 :Fuel: 600mhz R14kA/2gb/V10 Image 8x1.4ghz Itanium 2/8GB :O3x08R: 32x600mhz R14kA/24GB :Tezro: 4x700mhz R16k/8GB/V12/DCD/SAS/FC/DM5 :O3x0: 2x700mhz R16k/4GB
hamei wrote:
Why are "developers" incompetent nitwits ? ... If you'd like to know, I can tell you why many manufactured goods nowadays stink ....

Why do you ask questions to which you already know the answers? :P

_________________
:Onyx: (Maradona) :Octane: (DavidVilla) A1186 (Xavi)
A1370 (Messi) dp43tf (Puyol) A1387 (Abidal) A1408 (Guardiola)

"InfiniteReality Graphics - Power Through Complexity"
Hamei, a good example of DC Metro area developers from yesterday, the following code gets hit when a change to a Help Ticket occurs and emails the associated people. Pretty cut and dry, and should scale from 1 user to 20, 30, 40 etc.

Code:
foreach (var address in users.Where(a => !string.IsNullOrEmpty(a)).Distinct())) {
using (MailMessage msg = new MailMessage())) {
msg.From = new MailAddress(NotificationFromEmail);
msg.To.Add(new MailAddress(address));
msg.Subject = subject;
msg.Body = body;
msg.IsBodyHtml = true;

using (SmtpClient smtp = new SmtpClient()) {
smtp.Send(msg);
}
}
}


The vendor spent days trying to figure out why this was slow as more users got attached to tickets. A simple glance to even a non-programmer would question, why would you open and close the Smtp Server connection for every single email? On top of the fact, the function was not set to be asynchronous, so the post back waited for every single email to be sent.

I asked my boss exactly what he intended, and he had actually asked for 1 email to go out not x number of emails, where x is the number of users attached to the ticket.

< 5 minutes later, removed the foreach loop and replaced the msg.To line:
Code:
using (MailMessage msg = new MailMessage())) {
msg.From = new MailAddress(NotificationFromEmail);
msg.To.Add(String.Join(";", notifyUsers.Where(a => !string.IsNullOrEmpty(a)).Distinct()));
msg.Subject = subject;
msg.Body = body;
msg.IsBodyHtml = true;

using (SmtpClient smtp = new SmtpClient()) {
smtp.Send(msg);
}
}

_________________
:Indigo: 33mhz R3k/48mb/XS24 :Indy: 150mhz R4400/256mb/XL24 :Fuel: 600mhz R14kA/2gb/V10 Image 8x1.4ghz Itanium 2/8GB :O3x08R: 32x600mhz R14kA/24GB :Tezro: 4x700mhz R16k/8GB/V12/DCD/SAS/FC/DM5 :O3x0: 2x700mhz R16k/4GB
guardian452 wrote:
Why do you ask questions to which you already know the answers? :P

I don't actually know the answer to that ... I know why manufacturing has been decimated and why products are shoddy today but it puzzles me why programming should be so bad. I mean, we were all going to be highly-paid knowledge workers in the Brave New World.

Instead, most manufactured goods are pretty bad, there's no jobs for people who want to work with their hands and the hi-tech computing world gives us about 80% shit. People are paying big money to go to school these days but they come out of it with no skills ? It doesn't cost any more to write good code instead of the crap we see, so why ? I'm kind of curious.
hamei wrote:
It doesn't cost any more to write good code instead of the crap we see, so why ? I'm kind of curious.


Lack of skills. Schools still focus too much on memorization instead of teaching the underlying concepts and often jump on the trendy language of the year. It happens way too often that the students only copy&paste snippets from the web together and change them minimally so it sort of works.
The result is that we have a lot of people who barely know one language (Java and C# seem to be popular these days) and nothing else.

I once overheard a conversation about pointers in C... One student asked another how he knows how many asterisks he has to put in a variable declaration and the other proudly replied that he just keeps adding them until it compiles :lol:
Sadly, they were final-year BSc students.

It also takes time to properly test software, so most people don't bother. This is especially present in various programs people made for their own amusement and later released as open source. (I've been guilty of this as well, e.g. with nekopkg.sh, which started as a quick hack that I meant to rewrite but haven't had the time to do so yet.)

From what I've heard, schools don't encourage their students to enable warnings when compiling or to use static code analyzers. This is really bad, because using these tools helps people become better programmers.

I've noticed that the good programmers invest their own time into learning new things and aren't just concerned with passing the classes and getting a piece of paper.
Such people usually end up with well-paid jobs and they have very little competition. Web development is an entry-level job, which explains why some websites are so poorly made.
ShadeOfBlue wrote:
I once overheard a conversation about pointers in C... One student asked another how he knows how many asterisks he has to put in a variable declaration and the other proudly replied that he just keeps adding them until it compiles :lol:
Sadly, they were final-year BSc students.


That's just lazy.

Whaddaya expect with these "Interactive Terminal" thingies? If they had to turn it in on a punchcard deck and get the printout back the next day they'd be more careful!

:lol:

Somewhere someone must be thinking it.

[edit] rearranged for clarity.

_________________
Damn the torpedoes, full speed ahead!

Systems available for remote access on request.

:Indigo: :Octane: :Indigo2: :Indigo2IMP: :Indy: :PI: :O3x0: :ChallengeL: :O2000R: (single-CM)
A friend sent me this:
Image

You know, it might actually be a good idea for schools to teach programming on old workstations, e.g. the SparcStation IPX, then people would have to think before compiling something :mrgreen:
The first computer my family ever owned was a PC running DOS, back in the early 1990's. As a kid, I had no idea whatsoever that it had QBasic on it, or even that such a thing could help me to build my own programs. I would have loved learning all about it, if I had even known that such a thing existed. Microsoft has always kept these sort of tools out of sight, maybe because the company's view is that people should buy software written by professionals instead. I admire that other types of personal computers had BASIC in plain sight, like the Commodore 64, which even booted into a BASIC interpreter (very cool!).

For learning programming, high level languages like Python and Ruby can provide nice programming environments with interactive REPL's. You can type in code and see it evaluate in front of you. That type of immediate feedback is really great for learning the basics.

_________________
Debian GNU/Linux on a ThinkPad, running a simple setup with Fvwm.
Most of the home computer BASIC interpreters were written by Microsoft, including on C-64 and Applesoft BASIC on the Apple ][. The licensees made various changes to add their own features (like disks and graphics).
Bill Gates was a strong believer in people being able to write their own software, and supported the release of Visual Basic when others opposed it. As a programmer, I'm not sure that was a good thing; the experience of writing programs in BASIC is said to leave one "mentally mutilated beyond hope of regeneration".

_________________
:PI: :O2: :Indigo2IMP: :Indigo2IMP:
robespierre wrote:
Bill Gates was a strong believer in people being able to write their own software, and supported the release of Visual Basic when others opposed it.

As long as there was some way he could visualize himself making money off their efforts, certainly.
robespierre wrote:
As a programmer, I'm not sure that was a good thing; the experience of writing programs in BASIC is said to leave one "mentally mutilated beyond hope of regeneration".



People saying that have no experience with more modern BASIC languages and were probably using some of the worst BASIC dialects like the one in C64. In the more advanced BASICs there is no need to use line numbers, or even single GOTO in your program as you can just use procedures instead. Besides arrays you can find things like structures/arrays of structures.


I find BASIC very good for non programmers like me, as you can quickly get some results with minimal time and effort.
Visual Basic has all of those features, but encourages terrible habits notwithstanding.

In my earlier post, I forgot the loudest cracker: people who somehow think it was difficult to hack and abuse PC-DOS never used DEBUG.COM.

_________________
:PI: :O2: :Indigo2IMP: :Indigo2IMP:
robespierre wrote:
... people who somehow think it was difficult to hack and abuse PC-DOS never used DEBUG.COM.

EDLIN. I still have nightmares ...
I could never get hang of Visual Basic, so experimented with QBasic instead.

I still have book called Qbasic Fundamentals and Style, which was great to learn the basics and also light enough to read for non native English speaker. I have found most books about programming to be pretty heavy to read and you can read whole day, but nothing stays in your head when you put the book back to shelf.
theinonen wrote:
robespierre wrote:
As a programmer, I'm not sure that was a good thing; the experience of writing programs in BASIC is said to leave one "mentally mutilated beyond hope of regeneration".



People saying that have no experience with more modern BASIC languages and were probably using some of the worst BASIC dialects like the one in C64. In the more advanced BASICs there is no need to use line numbers, or even single GOTO in your program as you can just use procedures instead. Besides arrays you can find things like structures/arrays of structures.


I find BASIC very good for non programmers like me, as you can quickly get some results with minimal time and effort.


That's a (paraphrased) quote by Edsger Dijkstra ("... whereas the teaching of BASIC should be rated as a criminal offence: it mutilates the mind beyond recovery. "). He also said "The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense." The man was not a fan of unstructured languages :)

_________________
Twitter: @neko_no_ko
IRIX Release 4.0.5 IP12 Version 06151813 System V
Copyright 1987-1992 Silicon Graphics, Inc.
All Rights Reserved.