HNHacker News
TopNewBestAskShowJobs

agentgt

2,475 karma · joined September 22, 2011

SnapHop cofounder. Alumni of GaTech. Father.

I like sailing, hiking, fishing and of course programming.

I try to be accessible, and empathetic. Never hesitate to reach out to me!

If you would like to talk to me via twitter DM or twitter in general: @agentgt

Email: adam at snaphop com

submissionscomments
agentgt··on What makes a good REPL?
> REPLs are not ephemeral on Common Lisp environments.

You'll have to patiently elaborate more for me. Do you mean because the editors keep track of it and that you are working with immutable/idempotent stuff? Otherwise IMO it is ephemeral because you are mutating things and you can forget what you have loaded and what not. I'm probably wrong though.

> There are/were true REPLs with static languages, Mesa/Cedar and Oberon are two examples that come to mind.

Yes many do including my favorite of OCaml's utop but not many allow hot code replacement for a currently running program. I think the author alluded to that. Of course I have no experience with Mesa/Cedar Oberon. I'll have to check those out.

> I used to use Jython/Groovy as my Java REPL, now just have to wait for the Java 9 release.

I used Groovy as well but mainly because I didn't want to load a full IDE to test a couple of things. As I mentioned before I think with Eclipse/IntelliJ + JRebel + Debug attachment you can get damn close to a REPL.

And depending on how you define REPL I think hot code replacement + debugger might actually be more powerful than a REPL but I have to explore that thought some more.

agentgt··on What makes a good REPL?
I assume you are the author? I think you make valid case/points but I have some kind counter points if you don't mind

> 1. Having too many unit tests makes your codebase harder to evolve. You ideally want to have as few tests as possible capture as many properties of your domain as possible.

Yes but I have found what often happened for me with with REPL environments is the actual code base would be littered with stuff to massage the REPL (commented out or left behind). At least with the unit tests that playing around stuff is away from the actual code.

For both cases there is always the delete button :) . Also for some reason many developers I have worked with don't seem to have a problem deleting or putting an ignore on a test. After all the tests are source controlled. I do get your point but I don't think its that strong.

> 2. Tests can only ever answer close-ended questions: "does this work?", but not "how does this work?", "what does this look like?" etc.

I fail to understand this point. I mean you can obviously write tests that just run stuff and not throw an exception or error. Furthermore you can share how you set stuff up with other developers.... and again you can just delete it if its obnoxious.

> 3. Tests typically won't run in real-world conditions: they'll use simple, artificial data and mocks of services such as databases or API clients. As a result, they don't typically help you understand a problem that only happens on real-life data, nor do they give you confidence that the real-life implementations of the services they emulate do work.

This is exactly what I do not like about REPLs. You setup a custom environment and its hard to keep track of what you have done. I don't like the "not repeatable" nature of it. I do think you make excellent points about how immutability helps that problem as stuff basically becomes a log but for other languages this is not the case.

However this is by far your strongest point. There are languages that allow you to play with a system while its running. Perhaps not through the command line but through a debugger. The Java debugger in Eclipse/IntelliJ can evaluate expressions and are not far off from being REPLs.... in some cases the debuggers are stronger than REPLs.

agentgt··on What makes a good REPL?
> The thing to realise is that, at least is my experience, REPL based development doesn't mean your are actually typing code into the REPL.

> Instead, you develop code in a file, but constantly evaluate code as you go along.

Yes but what you are describing is hot code replacement and evaluation. You do not need a REPL. For a concrete example Java + JRebel + Debugger (Eclipse calls it Display with a glasses icon) will do that for you.

In my mind a REPL is very much about the input and of course the output otherwise its basically what I mentioned above.

And I think the the article doesn't really go into any new innovation or attempts at making REPLs better (particularly because they mention Bret Victor)... ie better input and better output.

Yes advanced REPLs have history saving capabilities and what not but then they are basically competing with the rest of the editor, IDE and source control.

Really innovative REPLs I think are what Bret shows, as well Squeak, and Racket. Those environments offer really unique input and output.

agentgt··on What makes a good REPL?
With fast compiling languages a unit test is not for off from being a REPL. In Java I use JUnit as a REPL.

Actually I prefer unit tests over a REPL the same reason I prefer bash scripts over one liners or SQL scripts instead of typing into the interpreter... I don't like the ephemeral nature of REPLs.

Also with true REPLs unlike the debug unit test approach I mention with Java you really need the language to be dynamic. I'm not entirely sure why but static type languages are not very good at allowing code modification while running (I mean I have ideas but I don't know precisely if there is an actual theoretical limitation).

I guess I prefer static analysis over the complete ability to modify the code base while running.

Only add my 2 cents because the article doesn't mention any negatives to REPLs.

agentgt··on Inception movie explained programmatically with C and assembly
I briefly glanced at the code and was expecting a game like clock to emulate the time dilation that the dream within a dream caused.

I can't remember in the movie what was the deepest dream possible but you could pick a large base ticker value in case whatever you decide as the lowest dream is not (I remember the movie leaving that as an open question).

agentgt··on Casually removing root files
It wasn't chattr.

It was this problem with SELinux: https://stackoverflow.com/a/21636460/318174

    restorecon -R -v /root/.ssh
I was confused because I have used chattr with ssh files before just for added security. My memory was also hazy because I don't know much about SELinux. Hopefully I didn't misguide anyone.
agentgt··on Casually removing root files
This reminds me of the time (albeit my memory is hazy) of an issue of having to set `chattr -i` on .ssh files because even though I had the right chmod permissions SSH still would not read it. It was quite painful to figure out and I can't recall if I googled it or read it in the man pages.

I believe it was because I had done something funny with the home directory and the user didn't fully own it (I believe it was a home media server).

I guess apparently some SSH versions expect `chattr -i` or I guess the parent directory to be owned completely by the user (I have been meaning to look into this some day). Maybe it wasn't -i .. maybe it was +i?

agentgt··on Algorithm to gauge how likely a CEO was ousted or faced pressure to step down
A pet peeve I have is when writers particularly journalists use the word algorithm when they really mean heuristic. I understand the word is slightly nebulous particularly in the context of real programs.

See an algorithm both in comp sci and cognitive science always gets the same correct answer but heuristic may or may not be correct and may even produce different results with the same input.

Thus ML is generally heuristic based.

agentgt··on How far you can get if you leave the largest U.S. cities at rush hour
> Not sure what point you're trying to make — I live in Boston and the map seems generally accurate. Sometimes it takes longer, sometimes shorter — that's why we use averages.

Yes the map is correct! I'm saying what most people probably missed is that New England is highly compressed and has many factors such as complicated roads and seasons.

However because its compressed you do not need to travel 5 hours! Five hours gets you past NYC even with traffic.

> There's also a reason traffic to the cape is high during the summer months — the cape sucks in the winter. Not sure how you're using that to your advantage.

No its exactly as the article points out that timing is big deal and I was saying its even more of a big deal seasonal. I said I left at 4 pm. to the Cape Not 5 pm. That is a big deal for Boston as the article clearly shows. In other cities it is not. In other cities such as Atlanta for example you still have to drive 4 hours to get Savannah.

However cursory look of the article makes it appear cities like Atlanta are great commuting cities because of how far you can drive regardless of the time.

agentgt··on How far you can get if you leave the largest U.S. cities at rush hour
My overall argument wasn't that Boston is so special (albeit clearly it is as this article shows at the top). Its that the high congestion cities are far more compact and there are more things to do in less mileage (ignoring nature activities like hiking).

I'm annoyed that I said "parts of California" at all and probably should have said Texas (I clearly got downvoted for mentioning Cali didn't have things to do).

agentgt··on How far you can get if you leave the largest U.S. cities at rush hour
> Lol @ the assumption that most of these cities don't have "4 seasons".

I didn't say that. But for sure Boston has much more dramatic seasonal change than many of the cities on the list.

> Also lol @ the assumption that there's only interesting things within 5 hours from the epicenter of Boston (I couldn't even type that with a straight face).

I picked Boston but it applies to the top cities (from the article) as they are more compressed:

1. Boston - has intense seasons

2. Los Angeles - do noes not really have seasons

3. Miami - ditto

4. Chicago - extreme seasons like Boston

5. San Francisco - mild seasons

6. San Diego - no seasons whatsoever

I only picked Boston because I know it well. I don't want to get into the all natural hiking granola see the earth shit. Yes clearly areas like Las Vegas win at that.

The article even sort mentions my point: "Twenty miles might not seem like much, but in tightly packed New England, it’s the difference between being stuck in Massachusetts or escaping to neighboring Rhode Island or New Hampshire."

Otherwise why the hell do you think its so congested? More people and more stuff = more compact. Often this equals more things to see and do.

People in Massachusetts do not have to drive 60 miles to get to their job because stuff is more compact. In Atlanta they do!

I pick Atlanta because I have lived there and let me tell you have to drive quite a bit even to get to a reasonable body of water (Lake Lanier) let alone the ocean.

agentgt··on Learnings from One Year of Building an Open Source Elixir Application
> Elyxel was designed and built with performance in mind. Styles and any additional flourishes were kept to a minimum. My choice of Elixir & Phoenix was driven by this consideration as well. Most of the pages are well under 100 kilobytes and load in less than 100 milliseconds5. I find it's always helpful to keep performance in the back of your mind when building something.

Thats much appreciated but I was kind of hoping you (the author) would go into more details about request time. Most people can (and should) do the above. However I would be more interested in what Elixer + CRUD is like particularly for TTFB. Like does the author do streaming (I don't necessarily mean websockets or comet)?

After all if the TTFB is really slow the CSS optimizations and what not matter little.

In traditional request per thread (or whatever is analagous) web framework paradigms the request is a single thread and often waits for the database to finish before moving on to display the page. I would imagine Elixir has a better answer at least for read only pages.

agentgt··on How far you can get if you leave the largest U.S. cities at rush hour
LA has absolutely the worse traffic.

I have no doubt you can see many things with no traffic in LA in 5 hours or less. Every time I have been there it's been horrendous that it makes Boston traffic look like a joke.

With New England it's not necessarily the traffic its the fact that the roads are smaller and not straight shots.

As far the Cape looking cheap which was a poor taste comment I would take it over any pacific beach :P .

The pacific coast beaches while do have surf are for some reason so cold with the some minor exceptions.

Over all I meant certain parts of cali and not LA specifically.

agentgt··on How far you can get if you leave the largest U.S. cities at rush hour
New England looks pretty bad in this article but I beg to differ albeit I am biased.

I live around Boston and while I agree I will say that Boston like the rest of New England is extremely seasonal and even then it's week by week and based on weather. I'm typing this while on my iPhone after just traveling to Cape Cod this Friday evening and it only took 1.25 hours and left at 4pm.

I hope to make two points:

1. you can see hell of lot more interesting things in 5 hours or less from Boston than almost any other city in the Midwest or even California.

2. Boston is extremely high variance particularly because it is a college town and has "4 seasons". If you know what you are doing you can use this to your advantage.

agentgt··on Cal State will no longer require math and English placement exams
I believe it was circa 2001. My whole life I have had terrible penmanship but most teachers still had the ability to read my writing.

There were a couple of other problems that exacerbated the situation. I believe you had to use their pencils and their blue notebook. This was a problem for me because by that time I had gotten quite accustomed to typing and when I did write I used a high end mechanical drafting pencil.

I didn't find out about the illegible part till I had my college's dean check out why I had failed it yet again.

agentgt··on JavaScript for People Who Hate JavaScript
The problem is downvotes mean different things to different people. IMO a point based system for comments particularly one with downvoting is a sort of an aggressive one that may steer certain folks away when really good community shouldn't. It might even create a bad culture and attract hyper aggressive and deter more passive folks. There are other gamification systems that don't allow downvotes (e.g. Quora) which I think are better.

When I have been downvoted in the past for opinion things I'm immediately concerned that I have offended someone. It actually is painful not to know... did I say something factually wrong... is my comment being misinterpreted... am I coming off as offensive?

I'm sorry I'm not an "adult" but I need explanation as to why a comment is incorrect or why you might disagree otherwise I'm not going to sugar coat... it doesn't feel good to be downvoted and I'm sure others feel the same.

agentgt··on Cal State will no longer require math and English placement exams
You might be asking how one fails the state testing (then gets put in remedial class) but gets accepted to college (particularly a CA state one).

Let me tell you a funny yet embarrassing story. I went to GaTech and I failed the English Regents test not once but twice!

Now at first I thought it was my fault. I didn't really take the test seriously. However I was seriously embarrassed. After all this was Georgia not California.

Long story short after having to go through a remedial english class that was a complete waste of my time and somewhat embarrassing I learned the reason I was failing.... the exam testers could not read my hand writing!

To this day I'm still sort of jaded about the whole thing.

agentgt··on Text Editor Performance Comparison (2016)
Well that is sort of like saying Emacs is written in Elisp. Its true a good portion of the editors are written in their own scripting language (js for atom, and elisp for emacs, and beanshell for jedit) but I believe the critical components that these tests test for are probably not.
agentgt··on Text Editor Performance Comparison (2016)
Of course I know they load up a web browser but you would think that is something what Java people would do (in terms of over engineering and over use frameworks and fair game as I'm a Java developer).

I'm basing this on the original poster that thought it was funny that Emacs is fast/small. You don't think its ironic that a Java editor is small and fast given its history of being slow and bloated?

agentgt··on Text Editor Performance Comparison (2016)
I'm actually sort of impressed how well JEdit performed. Other than micro its one of the only not written in a C/C++ language (the critical components... I realize emacs, code, atom, sublime all have their extension languages).
agentgt··on Text Editor Performance Comparison (2016)
Not really... IMO whats far more hilarious is to see an editor written in Java handily beat the newer editors like Atom, Code, etc.
agentgt··on Text Editor Performance Comparison (2016)
Oh man I forgot about JED! It was my first editor. At the time Emacs was often too slow on my computer (circa 1995 maybe even as early as 93).

That editor was awesome and it had a cool library I think called Slang which had its own sort of ncurses implementation and scripting language (probably wrong on the details).

The author also implemented an awesome news reader back you know when people used news readers.

agentgt··on The Most Common Error in Media Coverage of the Google Memo
What pains me is before reading this article I was slightly biased because of previous articles.

Actually it doesn't pain me... it really pisses me off that so many journalist are fooling people... particularly me.

When I read the bloomberg article (which I submitted to HN and now I want to just bang my head on the table for doing it) I was actually slightly siding with Google. Even though I was constantly telling myself "lets see the memo before judging" I could feel myself making a biased assumption.

I'm so annoyed with myself.

agentgt··on Ferret – A free software Clojure implementation
You could have provided a link to the memory management section or even mentioned it was ref counting. Otherwise your comment is ... it kills me to say this but pretty useless.
agentgt··on July 2017 Hacker News Hiring Trends
I'm not that much of Go fan but I'm surprised its not on the top 20 list even if it is mainly startups hiring.
agentgt··on Birkenstock CEO accuses Amazon of ‘modern-day piracy’
I think (but I'm hardly certain) if the cost of fast shipping is reduced and provided for all companies we might start to see some downfall of Amazon.

More and more I'm buying directly from companies websites. Its often cheaper, the service is often better, and the overall shopping experience can often be easier than Amazon (comparing products and colors on Amazon is a nightmare). The only real issue is not having 2 day shipping.

This is why I think Amazon is investing so much in there own label/brand. If shipping is fast and cheap and most companies have a good ecommerce system and It was all aggregated (aka google) nicely why would I buy from Amazon?

For so long people have said lower price is what drives sales. That people go where the lowest price is. I'm starting to think immediacy is now the higher priority. When I need baby wipes ... I needed them yesterday.... and I need them to work and be the correct ones.

agentgt··on Show HN: Themes based on the biggest startups
As well as the unoriginal blatant gatorade logo ripoff. Do you really want to add HFCS to your project.
agentgt··on Microsoft Paint to be killed off after 32 years
I'm embarrassed to say it took me a full year of mac use (I came from linux originally) to learn that preview app could edit as well you can insert your own signature!
agentgt··on A quick guide to Stripe’s culture
> Are you really saying you'd prefer to work for a company that doesn't think about what its internal culture

maybe.... kidding. culture is really hard to define. But yes your point is taken but my point is by defining concrete things you can create a culture.

For example one concrete thing could be a company that says our top level executives or performers are only paid 3x than the lowest paid employee. That would indicate a lot more to me than the fluff that Stripe wrote.

> and values should be?

I absolutely care about this. This IMO is different than culture (or maybe they overlap). You can have intense high work ethic culture that have many of the big picture same values as one that does not (one example would be school systems).

You can also have very similar companies in goals and values in completely different areas of the world that have completely different culture because naturally that region has a different culture.

That being said you make valid points.

agentgt··on Microsoft Paint to be killed off after 32 years
Every time GIMP crashes on my Mac (been meaning to figure out why but for some reason its when I copy and paste) I think of Microsoft Paint and I would love it if Apple had an analog.

Its sad because other than MS Excel, MS Paint is one of the few MS apps I know how to use. I am so bad with word and powerpoint. Even my knowledge of Excel is pretty bad. I have been known to even load up simple datasets in Postgres,Pandas, or even R because of my sheer incompetence and inability to navigate menus.

Minesweeper is also pretty cool and underrated albeit boring after a few... errr 100s of plays.

← PreviousPage 3 of 34Next →