< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #211 - March 26, 2023

Here are the top threads of the week, happy reading!

Top comment by dathinab

CS is Computer Science not software development or programming or computer engineering.

People/companies commonly treating both the same is IMHO one of the major problems of the current industry.

None of the topic you mentioned are fundamental to CS.

They are fundamentals of software development.

Wrt. to computer science they are at most specializations and even then what you might do in a science context of them might differ largely to what you would need to use them for production focused software development. Through they do contain some fundamentals like, e.g. set theory in relational databases and graph theory in network programming and concurrent programming.

You can (rightfully) have a master of computer sience _without having ever written a single line of code_. And going back ~20years that wasn't even that uncommon.

Now today a lot of universities have realized that this mismatch causes problems and are also teaching the fundamentals of software developments additionally to the fundamentals of computer science. Additionally of lot of computer science today requires the use of tooling which requires some programming and SQL.

Still what the "fundamentals of software development" are is a much less clear topic then the "fundamentals of computer science" (and even there people disagree all the time). And for example "relational databases/SQL" is one of the thing people can strongly disagree on weather its foundational to software development or not (anymore).

Top comment by barbarr

For coding, I've been using it like Stack Overflow. It really decreases my barrier to doing work because I can ask lazy follow-up questions. For example, I might start out by asking it a question about a problem with Pandas like "How do I select rows of a dataframe where a column of lists of strings contains a string?". After that, GPT realizes I'm talking about Pandas, and I'm allowed to ask lazy prompts like "how delete column" and still get replies about Pandas.

I also use it for creative tasks - for example I asked it for pros and cons of my cover letter and iterated to improve it. I also used it to come up with ideas for lesson plans, draft emails, and overcome writer's block.

GPT has drastically lowered the emotional-resistance barrier to doing creative tasks and improved the quality of my output by giving me creative ideas to work with.

Top comment by Eyas

Most of the links here help with your immediate questions, but if starting with base concepts and first principles is appealing to you, I have to recommend:

- the MIT Operating Systems Engineering OCW course [^1]

- specifically, Lecture #2 [^2] which describes the bootloader for 'xv6', a reimplementation of Unix v6, which does a great job showing what a solid OS with all the basics look like

[^1]: https://ocw.mit.edu/courses/6-828-operating-system-engineeri...

[^2]: https://ocw.mit.edu/courses/6-828-operating-system-engineeri...

Top comment by tarsinge

For years I made the error of learning music theory without enough ear training. You have to hear and feel the theory, it's not only intellectual.

Then I found 2 exercises are all I needed for playing and composing music by ear:

- Functional intervals / scale degrees: https://tonesavvy.com/music-practice-exercise/220/functional.... If you start tone deaf like me checked "Fixed Key", learn all the intervals, then restart with basic intervals without fixed key.

- Melodic dictation: the advanced version of the exercise above once you are comfortable with each interval: https://tonesavvy.com/music-practice-exercise/222/melodic-di...

Once you can do melodic dictation you will be able to easily decode anything you hear, and map it to theory.

Edit: chord identification (https://tonesavvy.com/music-practice-exercise/216/chord-iden...) is obviously important but by then identifying basic chords should be easy, so it's for a more advanced level.

Top comment by shagymoe

The emperor has no clothes.

How many crises do we have to go through before we admit the fed and banks either have no idea what they are doing or they know exactly what they're doing and it's malevolent?

The number of people here defending the system and saying this isn't inflation is mind boggling. Where do you think the money comes from when the government rescues banks? No matter how you slice it, the taxpayer pays through higher fees, higher rates or inflation.

This system of rescuing banks with no prosecution of the people responsible and printing a mountain of money is unsustainable. It's clear that humans will never implement an equitable system and it makes the case for Bitcoin every day...unless you profit from the financial system and then I'm sure you'd be thrilled to kick the can down the road.

Top comment by leviathant

I actually feel more anonymous and self sufficient in a city. Maybe even a touch reclusive. And if you think moving to a small rural community will solve your cynicism about society, you're in for a shock. Things get super petty in small towns, and everyone knows who you are and where you live, and what church you go to (or if you don't go to church)

Stop watching so much news, dude. Everything has always been terrible. The reality is, you have more access to more information than ever before in human history, and it's all pushed by companies trying to suck you in with more engagement, largely by inducing excessive emotional reaction to things outside of your control (and in many ways, things that have no actual bearing on your life)

Maybe I'm spoiled for parks in Philadelphia, but it shouldn't be that hard to get to nature from any city. I also go on urban hikes to clear my head.

The problems you describe won't be solved by a move to a small village. You need to ween yourself off the news you read. I'm not suggesting becoming a luddite, but stop gorging.

Top comment by PaulHoule

It started a long time ago.

When Google first introduced ads they were in those distinctive little boxes and not blended with the content. They said at the time that blending the ads with the content would destroy the legitimacy of the product and that they didn’t want to be evil.

Trouble is the ads compete with the search results. Why would a user even look at the ads if the search results were good? Why would an advertiser buy ads if they could spend resources in SEO and get an organic search spot that isn’t labeled as a self-serving ad?

SEO is a Janus-faced God. It has a negative aspect of spam and dark patterns (remember those weird pages you would hit on a typo domain? They looked like they were drawn with a crayon but were well-oiled monetization machines.). On the other hand, quality content that people want to link to and that fills gaps that people are searching for is powerful too. (Particularly when joined with darker tactics.)

You might blame Microsoft’s purchase of Powerset to get the knowledge graph technology behind Bing, Google’s panic and subsequent purchase of Freebase. But certainly it was the blending of ad content with the search results that made the organic search results wither away.

Top comment by alex7734

Not hetzner but a similar provider:

    - Deploy by stopping the server, rsyncing in the changes, and starting the server. The whole thing is automated by script and takes 5 seconds which is acceptable for us.
    - Run apt upgrade manually biweekly or so.
    - We use client-side load balancing (the client picks an app server at random) but most cloud providers will give you a load balancer IP that transparently does the same thing (not for free though).
    - For scaling just manually rent more servers.
    - For backups we use a cronjob that does the backup and then uploads to MEGA
    - For security we setup a script that runs iptables-restore but this isn't really all that necessary if you don't run anything that listens on the network (except your own server obviously).
    - DDoS is handled transparently by our provider.
While this might change if you're super big and have thousands of servers, in my experience simple is best and "just shell scripts" is the simplest solution to most sysadmin problems.

Top comment by supriyo-biswas

What extensions are you looking at? I'm not sure how you missed the popular ones like Buster[1], NopeCHA[2] or 2Captcha Solver[3].

[1] https://github.com/dessant/buster

[2] https://addons.mozilla.org/en-US/firefox/addon/noptcha/

[3] https://addons.mozilla.org/en-US/firefox/addon/2captcha-solv...

Top comment by karaokeyoga

My advice as an older programmer who has a son in engineering school (who is asking similar questions) … stay in CS. The world will change as a result of LLMs, of course, but new opportunities emerging will be one of those changes, and a CS background will help you prepare for such opportunities. My $0.02.