HN user

c4m

127 karma
Posts5
Comments24
View on HN

Is there a way to get the full book in English? It looks like the website and github (https://github.com/koki0702/dezero-book/tree/master/en) only have the first 10 of 60 steps, and the link to purchase (https://www.amazon.co.jp/dp/4873119065/ref=cm_sw_em_r_mt_dp_...) is for the Japanese version.

There's another github link (https://github.com/oreilly-japan/deep-learning-from-scratch-...) with the code for all 60 steps, but not the explanatory text.

Thanks, this is helpful!

I think what I'm trying to understand is this: if I use EdgeDB in production, how often will I end up dropping down to the SQL level to debug things? If I'm trying to debug a slow query, can I do it at the EdgeDB level? Or will I have to open a PostgreSQL terminal, see how things are laid out there, run EXPLAINs, check the slow query log, and so on?

When I use ORMs, the answer to this is "pretty often". The ORM makes my application code cleaner, but I still need to have a complete understanding of the underlying SQL representation in order to ensure good performance and debug errors. I'm curious how that compares to using EdgeDB.

I'm wondering about the physical level—or at least how the EdgeDB conceptual level is translated to the Postgres conceptual level. The docs, and the comment you linked to, have helped me get pretty clear about the EdgeDB conceptual level.

What's a good way to develop a mental model about what's happening under the hood in EdgeDB?

With SQL, I have a mental model of how things work under the hood. For instance, I think of each table as being stored separately on disk, containing "rows". And the rows are really just equally-sized data blocks that are laid out back to back. B+ trees, with leaf nodes that point to (or just are) the rows, are used for indexes.

When I'm designing SQL schemas, I use this mental model to make guesses about performance. And when my queries are slow, I look at the execution plan.

My question is, how can I develop a similar intuition about EdgeDB? Under the hood, how are types and links stored in Postgres? And if I'm having performance issues, can I see an execution plan?

This is super interesting!

With a traditional interview and job offer process, a new employee can ramp up without worrying their job is on the line. And I think this is important, because it can take awhile to ramp up to full productivity, which can be stressful if the new employee feels like they're being evaluated already.

Where I've worked, my new manager told me "Hey, welcome to the company. Please feel relaxed and take your time ramping up, you've already passed the interview and we're happy to have you here."

With your process, how do you deal with people getting stressed out during ramp up or feeling imposter syndrome?

This is a neat tool! There’s one more feature I’d want before using it seriously, which is a field for stock market return rate.

If my down payment is 50,000, then in the rental (apartment) case I want to estimate how much I would be earning with 50,000 in the stock market.

I fully support this trend of people thinking critically about college and making their own decisions about it.

However be careful when dropping out if you'll ever want to work outside the country. Most countries require a 4 year degree for work visas, and this can sometimes be onerous to get around. This is especially important for those who don't have US citizenship.

Cool! Super small nitpick: There's a space missing in the alert that shows when you upvote/downvote without being logged in:

> Sorry, but anonymous users cannot vote.Please login or create an account here.

Really fun, but it seems like it provides JS input even if you use python. This causes all of the input cases to be marked as incorrect. For the Arith Geo question, here was my code: https://gist.github.com/1809940 and here was the result: https://gist.github.com/1809944 . So for example it said 'new Array(1,2,3,4)' yielded incorrect output. But I tried running [1,2,3,4] and it worked fine.

I know I selected python because it let me test my code by running it both before and after I submitted.

Anyway it's still really fun - keep up the good work!

Thanks for the feedback guys! I intend to do more interpreter/compiler projects so perhaps you will end up considering one of my future projects sufficiently interesting or exotic :)

Thanks for the feedback. It does support environments - if you check the source code it refers to environments as 'scope'. It is not possible to properly implement lambda without implementing environments.

> It's exactly like learning scheme. Seriously who fucking cares about scheme?

I'm a CS student at the University of Waterloo, where most early CS courses and many advanced courses here use scheme. There are thousands of students taking CS courses here so in fact there is a generation of grads being produced where a significant number (thousands at least) of them base much of their CS knowledge on scheme. That makes it very relevant.

Actually, I think that is the perfect question to ask. Knowing what you want to learn about is a huge step in the right direction.

The author presumes that everyone interested in coding should have a high level of confidence already. I disagree, and feel that if someone wants to learn about a subject, asking questions about that subject is exactly what they should be doing.

Chrome 13 15 years ago

13 is a really high version number. One thing I love about chrome is how silent the updates are. Other browsers tend to nag you about downloading the latest version, running an installer, etc..

Chrome updates much more silently + in the background, which is one of the many reasons it's my favorite browser.

I believe that good code is understandable, consistent, and easy to edit. This is because we basically do three things with code, which correspond to the above: read it, integrate it into projects, and change it/add to it.

If code is written that satisfies these properties AND solves a problem efficiently, then it is elegant for being useful and easy to work with at the same time.