Tommah

Joined 17 years ago

Karma
438
Submissions
131
Member since
Jan 2
I am a software developer who has worked mainly at local startups. I have experience with Python, Django, PostgreSQL, AWS, GCP, and many niche technologies. You can find out more about me at https://www.amecy.com/work/ .

If you play chess, try my tactics trainer at https://www.checkmatechamp.net/ . (It requires JavaScript to be enabled.) It uses Python on the back-end and OCaml and JS on the front-end.

I am looking for work, either full-time or contract. You can reach me by email here:

hn AT amecy.com

View on Hacker News

Recent submissions

Comment · 2 years ago
I'll add my two cents here. A lot of the work that goes into a codebase doesn't necessarily appear in the final product. Sometimes code is hastily written to get the system working, and then it has to be rewritten to be faster or more stable or what have you. A rewrite can just reimplement the final code. Sometimes the company changes direction (think of the stereotypical aimless startup that pivots every Tuesday) and the code solves a problem that the company is no longer interested in. A rewrite can just ignore that code. Some of this has to do with technical debt, but it's also due to the fact that it's easier to do something when you know exactly what you're trying to do.

It's like the difference between between reproducing a proof from a math textbook and actually proving a new theorem yourself. The latter takes a lot more time and effort, even though the amount of work in both cases looks the same from the outside.

Comment · 2 years ago
Django has the function render (it used to be render_to_response) that takes a template and converts it to HTML. So it isn't just the JS people who are using the idea of rendering in this sense. More generally, rendering doesn't necessarily mean something visual; for instance, one may talk about how a phrase in one language is rendered in another language.

(I'm also 39. You and I may see each other at the shuffleboard court soon.)

Comment · 2 years ago
You're right about D, but Rust is drawing some people away from C and C++. Something may emerge that will do the same on the JS front-end. In fact, I'd say that the TypeScript/React combo is more susceptible to being replaced than C and C++ are. There are many large C/C++ codebases that represent many man-years of work and won't be rewritten or thrown away any time soon. JS front-ends don't have that kind of longevity. Think about how many web startups just fizzle out, and their code just goes away.
Comment · 2 years ago
This is pretty poor writing by PG here. What is "neutral opinion"... fact? Or the people who answer "I don't know" in political polls? And saying "Actual frauds are usually pretty conspicuous" is silly. If an attempt at fraud were really obvious, it wouldn't trick many people. The big frauds are the ones that are outwardly plausible and therefore trick lots of people.
Comment · 2 years ago
Comment · 2 years ago
My Chrome installation updated itself recently, and when I restarted it today, it asked me whether I wanted to enable new AI features. I told it no. In retrospect, if it were really intelligent, it would have known I was going to say no.
Comment · 2 years ago
Don't worry. There will be a few witless attempts too.
Comment · 2 years ago
"So what makes you think you're a good fit for this job?"

"I already have it."

Comment · 2 years ago
bee_rider already touched on this in another comment, but the theorem makes sense if you consider a matrix with large diagonal values and small off-diagonal values (in magnitude). If I have a matrix with 1,000,000 on the diagonal and 1 everywhere else, I'd expect the eigenvalues to be 1,000,000 plus or minus some small error. The Gershgorin disk theorem proves this and puts an upper bound on the error.

The diagonal elements of matrices have a lot of rather "magical" properties if you think about it. Their sum is also the sum of the eigenvalues of the matrix. And if you have a matrix A that is singular, you can choose any value x that is not an eigenvalue, and then A - xI is invertible but still mostly behaves like A.

Comment · 2 years ago
Ahem, you mean alluding, not eluding.
Comment · 2 years ago
DOTA 2 gets rebalanced constantly; certain characters are made stronger or weaker. Overwatch also received some major changes relating to team composition.
Comment · 2 years ago
Maybe they just wanted 3,158 Hacktoberfest T-shirts.
Comment · 2 years ago
Yeah, I think they're trying to say "Stop writing in C and C++, blockheads!" but in a more diplomatic tone. Most of the common languages today are memory-safe. Really, which ones aren't? C and C++ are the big ones. I guess throw Pascal in there if you don't use pointers correctly. Assembly lets you make indirect accesses anywhere in your allocated memory. Perl lets you leak memory if you create circular structures and then lose references to them. But Java, JavaScript, Go, Python, Ruby, etc. don't let you trample all over memory the way C and C++ let you. You can corrupt memory if you really want to, e.g. in Python by using ctypes to cast integers to pointers, but it takes a lot of effort.
Comment · 2 years ago
I still see a lot of outdoor signs that alternate between showing the time and the temperature. They're usually outside banks, and near apartment buildings sometimes. Libraries probably still have clocks; they want people to know how close they are to closing time.
Comment · 2 years ago
One of my startup jobs paid us through ADP. While our ADP account was being set up, my boss told us to be on the lookout for an email from them. So one day, I'm in the middle of programming something, and I check my email. Lo and behold, there is an email from ADP... or is it? It is about fifty words long and contains five grammatical errors. It's asking me to fill out the attached PDF and email it back. The PDF is asking for my full name, address, phone number, SSN, and so on. I figure this may be some kind of phishing attempt, so I ignore it and get back to my work. If it's real, I'll hear about it again, right? Well, two weeks later, my boss tells me amazedly, "Hey, Bill from ADP is still waiting for your information! Why didn't you reply to him?!?!" I laughed and told him why.

As a bonus, when I was finally put into the system, they managed to get my zip code, phone number, and SSN wrong. At ADP, quality is job zero.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton