HNHacker News
TopNewBestAskShowJobs

stonecolddevin

13 karma · joined December 15, 2017

hello.
submissionscomments
stonecolddevin··on The deskilling of web dev is harming us all
this is fine when you're a junior learning but it's asking to get shit dumped on you later on. I think it's a good idea to pick a lane later on in your career and settle into it.
stonecolddevin··on Jedi Knight (Plus, Notes on an Expanded Universe)
Ok
stonecolddevin··on Testcontainers
Testcontainers is great. It's got seamless junit integration and really Just Works. I've never once had to even think about any of the docker aspects of it. There's really not much to it.
stonecolddevin··on George Harrison and the Struggle for Creative Freedom
I am the Walrus.
stonecolddevin··on Analyzing multi-gigabyte JSON files locally
Isn't this pretty much what JSON streaming does?
stonecolddevin··on GPU Video acceleration in the Windows Subsystem for Linux now available
I've been doing it for almost a year, am I missing something?
stonecolddevin··on Are all brains good at math?
I had no idea this had a name. Sure wish I'd have known this while I was in school.
stonecolddevin··on The Grug Brained Developer
I personally almost always use loops (in Java) unless I know the dataset being dealt with is small, unless I'm writing stuff in Scala where maps and flatMaps are first class, but diving into Scala is its own can of worms.
stonecolddevin··on PostgreSQL Subtransactions Considered Harmful
They're hyperbolic and don't actually give you any useful information on why they're "harmful" or what's wrong with the subject being discussed.
stonecolddevin··on Ask HN: How do I represent a hierarchy in RDBMS?
If you're using Postgres, you can use recursive queries using common table expressions. Disqus implemented this sort of thing 10 years ago: https://pastebin.com/Fe2twMRr (I can't find the original talk for some reason)

Here's the meat of the solution:

  CREATE TABLE comments (
        id SERIAL PRIMARY KEY,
        message VARCHAR,
        author VARCHAR,
        parent_id INTEGER REFERENCES comments(id)
  );
  INSERT INTO comments (message, author, parent_id)
  VALUES ('This thread is really cool!', 'David', NULL), 
  ('Ya David, we love it!', 'Jason', 1), ('I agree David!', 'Daniel', 1), 
  ('gift Jason', 'Anton', 2),
  ('Very interesting post!', 'thedz', NULL), 
  ('You sir, are wrong', 'Chris', 5), 
  ('Agreed', 'G', 5), ('Fo sho, Yall', 'Mac', 5);
What we’ve done now, is setup a basic comment model. We’ve included the message, the author, and the parent comment (which is optional). Now let’s learn how to use a recursive query to easily re-order this date, showing us a fully threaded view, sorted in ascending order by id.

  WITH RECURSIVE cte (id, message, author, path, parent_id, depth)  AS (
  SELECT  id,
          message,
          author,
          array[id] AS path,
          parent_id,
          1 AS depth
  FROM    comments
  WHERE   parent_id IS NULL

  UNION ALL
 
  SELECT  comments.id,
          comments.message,
          comments.author,
          cte.path || comments.id,
          comments.parent_id,
          cte.depth + 1 AS depth
  FROM    comments
          JOIN cte ON comments.parent_id = cte.id
  )
  SELECT id, message, author, path, depth FROM cte
  ORDER BY path;
stonecolddevin··on Ask HN: What's the most underrated programming language?
I really wish C# had more battle tested linux usage. I really love that language.