HN user

peterhi

312 karma
Posts0
Comments155
View on HN
No posts found.

Oh god we had this in team building exercises in the woods. "Here's a pile of junk, work out how to cross a stream without getting wet". One guy grabbed a long piece of wood and vaulted over the stream, others weren't satisfied until they had incorporated every single item from the pile of junk into the solution

It suddenly made it clear how each person worked that I couldn't see in the office

But the flag was useful to show in the ui where the language setting was. This is especially useful when the language has been set to something I cannot read. I don't know which of 语言设定 and 重置设备 will allow me to set the language back to English. Also flags in the menu means that I can find English easier than 英语

But that is my point. When trying to teach Lisp they would teach you all about the 100 ways to chop up lists without showing you why you would even want to. Your example would not have appeared until the 4th or 5th lecture and would have required the definition of a recursive function (two lectures on recursion alone) to achieve the same thing

And as for BASIC why would you need to "explaining how to create and manipulate a block of memory". This is not something that the BASIC programmer needs to know to write a program

This is just the sort of elitist crap that gatekeeps becoming a programmer. You can drive a car with only the most superficial understanding of how a car works and it does not affect your ability to get from A to B effectively

The answer to this decades old debate is simple, after each lecture the student should be able to do more than they did before they entered the room. At the end of the course they should be capable of teaching themselves from the available resources

It's the learnability of the language. Remember BASIC? You could show someone a FOR ... NEXT loop and they would completely understand. After a couple more 10 line programs and you can safely hand over the keyboard and handle the "how do I?" questions

You had to show very little before they understood. Now try Lisp ...

M: This is a list

S: What can I do with it?

M: By itself nothing but trust me it is important. This is how we take the head of a list

S: Cool, why would I want to do that?

M: We'll get to that later. This is how you take the tail of a list

S: ...

M: This is how to append to a list

S: Is this going anywhere?

The number of things you are shown but do not understand keeps piling up before they are supposedly going to magically work together to do something underwhelming (when BASIC did very little it took very little to do it). Add to that the function names were either cryptic, "cddar" anyone - "EQ" and "EQUAL", or insanely long

You have too much to learn before you can make sense of anything. Least that was how Lisp was taught to me in the 80s :)

I self taught Forth and Prolog because with both once you learn something you can do something

Currently on macos because the servers we deploy to are linux. Used to work on windows and it was ok, as everything was done from the command line and the application was deployed from the CVS. Realistically I was not really using windows in any meaningful way. Just something to launch a shell from

It would be annoying to unlearn the macos keystrokes at this point though

I was expected to get around 10 O Levels at school (a UK exam for 16 yo). I failed them all. The nearest thing to an academic achievement I have ever accomplished :) I stayed on for another 2 years just so I could get an O Level in basic English proficiency, the school was worried that I would be completely unemployable without it. You normally stayed the next 2 years to get A Levels (the advanced version of the O Levels)

Did a lot to temporary work and finally got a clerical job. Later the government opened the YOPS program (Youth Opportunities Program) and I went off to learn COBOL

Got a programming job with it and after a few years applied to go to University (at 29). Fortunately there was a drive to accept "mature" candidates (less qualified) and I was accepted to study Artificial Intelligence as an Arts Degree

Managed a 2ii (a 3 would be viewed as "didn't actually fail" but a 1 or 2i would have been a "good" result)

Went back to being a programmer

People genuinely thought that I would / could get 10 O Levels in the same year, I must have been smart enough to impress my teachers but it all fell apart when I sat down to do the exams

I think that I am at least intelligent but I get sidetracked (the amount of time I spent investigating prime numbers / golomb rulers when I was supposed to be learning calculus). It is still an issue. I have finally learnt everything that they tried to teach me at school (I'm 62 now) and a bunch more

However I was never told I was smart, only that I should try and that I was at least capable of achieving great things academically

I could have done more but that was all down to me and the effort I put forth

Linux vs. Mac 3 years ago

The os itself eats much more of the resources than linux running on the same hardware. Macos is a "bigger" operating system (more parts) and they all want memory and cycles. Linux is positively anorexic in comparison :)

It will also depend on how good you are at switching your "muscle memory" at the keyboard. But this is the same for all three of the main oses (linux, macos and windows). It can be very frustrating when you hit a keystroke combination and either it does nothing or something completely different

Ubuntu / Mint is rock solid. I run Ubuntu 22.04 and have had no problems despite heavy customisation on old hardware (Dell Optiplex 3040). If you can install Ubuntu (or Mint) I would expect to run it without issue

For Amazon the issue for me has always been that aside from the things I shop for myself I get asked to buy things for other people or presents for family members

Amazon doesn't know who I bought something for so making sense of why I have bought 4 padlocks (my father in law), a set of sauce pans (wife), a light novel (myself) and rechargeable batteries (myself)

I have found ebooks (at least on my Kindle) make reading code very hard. Wraps code which is not a good look for a language like Python and not much code is shown on each page. Also I find that I can not flip back and forth when I need to check up on something

I can scan through a physical book by just flicking pages, the Kindle does not update fast enough

For non technical books, books that I will read in a linear manner, the Kindle is just fine

Joins are severely misunderstood and often incorrectly used. I've seen code that had the wrong join and would return 1,000s of rows which then had to be programatically squished down into the data we actually wanted. Some hand crafted SQL usually fixes this

Also some ORMs write dreadful SQL where it comes to joins

A badly written join (or collection of joins) will take a longer time to run that will, when the system is under load, backlog other queries. If these errant queries make up a significant portion of your queries then it will hit performance significantly

It's not the joins themselves just the incorrect use of them

Work I would like to do and being paid accordingly (being originally a COBOL programmer myself)

Money is money after all

I would be less inclined to take a MUMPS gig than a Forth one. Part of the issue would be the environment. Developing Pascal on a modern unix environment with docker and all the nice tools is one thing. Having to go back to Turbo Pascal on MSDOS 3 would be a different proposition

If he can prove that he was saying what he did as an employee of IW then IW, the company, is responsible. The US doesn't necessarily hold that the company and the owner (even a sole owner) are the same. The phrase "corporate veil" is used here. However if it can be shown that AJ was using IW as a he, the person, wants then he can be held liable "piercing the corporate veil"

Keeping the owner and the company separate is a necessity under US law, even for one person companies

This was normal for me for good many years. Given that few companies promote internally (or that there are fewer promotions available to staff) means that if you want a change you will probably have to move on anyhow

I would say that your first concern is to find something that you actually want to do. When you leave to get away from a job you will probably end up in the same space and the cycle will start again

The money you get paid to work in London is in part because how expensive London is, so moving home with a pay cut may actually see you better off

Be careful of how this will affect your relationship. You don't want to get to the point where the line "I put up with is this shit for your career" leaves your mouth

Sports data (odds and pricing) is another area that ML could get you a job

Downvoting is too blunt a tool. You can downvote for many reasons "(I think) you are wrong", "your comment adds nothing to the discussion (simply repeating the original)", "I don't like you (lets be honest that is some peoples reason)"

Also the suggestion would balloon the number of comments and make the thread even harder to read

In the old days as you approached 30 being a pure programmer was unheard of (or at least you were going to become that "weird guy" in a corner office) and you were expected to move into management / consulting

I resisted and became that guy. I would be far richer by now if I had put on a suit and gone into consulting. It's not like I didn't have offers

Keep an eye on your pension / savings when you are younger. It gets much harder to top them up the older you get. My pension options scare me now and I can't see retirement as a realistic path

Take money seriously!

I've never found a benefit in "Personalized ads" because they have never been something that I am interested in, it seems to really mean "we can charge the brands more for this ad". There is a ton of stuff I would willingly pay for but it never seems to be what people want to advertise to me

After a time it finally occurs to me that those "one off" scripts that I write to help out at work really need to be packaged up. So I end up with https://github.com/PeterHickman/Nginx-Log-Tools to get basic stats out of Nginx log files. https://github.com/PeterHickman/chop to spit out just the parts of log files I am interested in. https://github.com/PeterHickman/Raid to bundle up all of my short scripts into just one Markdown formatted file. https://github.com/PeterHickman/Measure-Rails-SELECT-Perform... to summarise database activity from Rails application or postgres logs

There were others but as the issue passed or no longer needed to be dealt with they fall into disuse. Some however have ended up as part of the tools we use at work

Some even got documented :)

I was a Perl dev for more than a decade and the only problem we had was when we started to grow the company. We needed programmers who could do Perl but graduates had not even heard of it. How do you evaluate a graduate who had been taught Java as to how well they would do with Perl? Would they even want to learn it?

Learn Java. Work in finance. Take the money :)

Perl devs were self taught hackers. Finding them was nigh on impossible

We ended up with a bunch of Java devs and pivoted to Java for all new applications. As a commercial decision it was sound and the company is doing well

I'm doing Ruby now and facing the same problems but at least the graduates have heard of Ruby so they at least know what we are asking them to do

And yes Perl6 was a massive issue. At least they finally acknowledged that it was really a Perl inspired language and not Perl at all