HNHacker News
TopNewBestAskShowJobs

timroy

94 karma · joined October 11, 2014

submissionscomments
timroy··on Ask HN: What LaTeX editor do you use?
I use Emacs' org-mode for data science and for math courses. With Babel you can evaluate code and see the results in-line, with syntax highlighting. I don't use code completion myself but I'm confident it's available. With LaTeX preview, you can see mathematical formulae pre-rendered, again in-page.

You can then export from org-mode to LaTex, defining all the relevant settings at the top of the page.

timroy··on Explore UI States with DevCards and Clojure.Spec
Another post by the same author on spec: https://juxt.pro/blog/posts/parsing-routes-clojure-spec.html

Another brief intro to spec: https://coyotespike.github.io/blog/2016/08/18/core.spec/

Also, I wonder if someone will hook Spec up to DevCards directly for automatic UI testing. Seems like the logical next step, instead of manually putting the generated tests into DevCards.

timroy··on Voltaire’s Luck
Laphman has reminisced in a few of his essays about growing up in his august family in San Francisco - wonderful memories, windows into bygone eras. The pleasure of reading his essays, as for the magazine itself, lies in the prose itself even more than the ideas.

Someday I'll buy all the back issues.

timroy··on Ways to maximize your cognitive potential
No, an elephant needs a larger brain to run its larger body. Humans have enough brains to run our bodies, plus "extra" with which to think, in a manner of speaking.

https://en.wikipedia.org/wiki/Encephalization_quotient

timroy··on BetterExplained has a Patreon
Fantastic, happy to see this development. I keep a list of people/Patreons to support, and Kalid has been on it for a long time
timroy··on How to Land an Autonomous Vehicle Job: Coursework
Thanks for the reviews, that's quite helpful. I'm taking Andrew Ng's course again, and really enjoying it. I understood most of it the first time, but having linear algebra and calculus is a huge help this time around.
timroy··on My First 10 Minutes on a Server
Thanks for this article - very clear, well-motivated, and concise. I'm saving this for myself and others.
timroy··on Fewer, Better Things
Here's a good (and fun) column on how Ms. Kondo helps many people overcome cognitive biases.

http://www.theatlantic.com/business/archive/2015/05/an-econo...

timroy··on Tontines may make sense despite their history of disrepute
No, I (and presumably the other posters) can tell the difference - I just disagree on the morality, partly because I think the legal aspects are related to the moral aspects.

The guy purchased the right to the house once the current owner dies, but you believe it's immoral for her to continue living in it, or renting it out, or loaning it to friends, while she is alive. I think it's immoral to demand the house while she's alive, since that wasn't the deal.

Sometimes legality and morality are widely separated, but here they seem related.

timroy··on Please don’t learn to code
"Biohack" is pretty common - although that term also means, e.g, implanting magnets in your fingers.
timroy··on A Farewell to FRP
I have heard only good things about Schema, and I probably should have invested the time to understand and use it more intensively.
timroy··on A Farewell to FRP
So, the one big atom solved two problems for me.

First, in Reagent/FRP, I was updating a view based on the value of an atom. This meant I had different default values in different atoms. The big atom let me unify where I stored values, and reuse values, without a performance hit. Second, the big atom made storing application state trivial: you can just throw the map/record in Redis or something.

However, the big atom is just a big map, and keys can be paired with any value, so it is not enforcing types. From a Haskell perspective (where I understand the program almost falls out of the types you define!), this probably does increase the scope for error.

This can be mitigated with Schema (which I never used effectively), logging changes to the console, and being able to see your default map easily (like, there's a map in one file which I load upfront, so I can see what values are there).

I'd welcome hearing from anyone with a more advanced or precise use of re-frame state.

timroy··on A Farewell to FRP
Thanks, good to know.
timroy··on A Farewell to FRP
"if it compiles, then it just seems to work" Man, now that is tempting. Also, how easy are the ports? In ClojureScript you can use JavaScript pretty directly, but I often got a bit hung up translating the syntax (it's not that hard, it was just me).
timroy··on A Farewell to FRP
Yeah, after the app grew a bit, I had state scattered here and there. re-frame solves this with a big atom, and avoids expensive rendering every time the big atom updates with subscriptions. Subscriptions hold reactions, which only update if the underlying value changes.

The re-frame readme is epic and worth reading just for its own sake: https://github.com/Day8/re-frame

Not to get off-topic though! I am used to working with dynamic languages, but I really should work with a typed language. Elm looks like it offers many of the benefits of ClojureScript, but with typing as well.

Also, ClojureScript lets you write HTML and CSS in your code, but a quick web search indicates Elm may have gone further with incorporating CSS (?).

timroy··on A Farewell to FRP
This looks very cool.

In ClojureScript, we have the re-frame pattern/framework, which is built on Reagent, which is a ClojureScript wrapper of React.

re-frame is all about subscriptions, using a "big atom" to hold application state client-side. Seeing Elm implement the same subscription pattern makes it look pretty tempting.

My understanding is that ClojureScript and Elm have some similarities - functional, pleasant to work with - with one significant difference being that Elm is typed.

timroy··on Where Can a Ph.D. Take You? Back to School, Usually
Thanks for the advice! That's very helpful to fold into my research/analysis of next steps. :-)
timroy··on Where Can a Ph.D. Take You? Back to School, Usually
I think that's true. Most biotech companies are filled with PhDs. The cloud lab Transcriptic is an exception, started by a biomedical engineer in undergrad, but generally speaking it seems you need a PhD for credibility (not to discount the deep domain expertise one needs as well).
timroy··on Where Can a Ph.D. Take You? Back to School, Usually
FourSigma and IndianAstronaut, what do you think about doing bioinformatics as research, formulating and testing hypotheses, and then either using a cloud lab or a garage lab for at least some wetlab testing?

I've been researching intensively whether to go get a life sciences PhD, and I'm now leaning instead toward just learning bioinformatics and ML, with the wetlab stuff as an adjunct. If that's an effective way to do "real research", then it might be more accessible.

timroy··on Taskwarrior – intelligent TODO list
I posted above why I like Org-Mode. Here are a few things it doesn't do well.

1. Because it is text-based, its visual summaries are limited. Like, there's a calendar, and for org-habits a simple color-coded chart to show consistency, but that's about it. If you're looking a week or a month ahead to visually see how many tasks you have coming up, the org-agenda is text-based.

2. While org-mode can sync with Trello, Beeminder, and a couple other task-management systems, its integrations are pretty limited. If you want to integrate with Contacts or whatever you'll have to work a bit.

3. org-mode's part of Emacs, so you'll need to be comfortable with Emacs.

Contrast this with Sunrise Calendar. Sunrise Calendar grabs gmail messages and appointments, iCal, google calendar, and displays them all nicely.

Pluses and minuses, depends on your needs and what you like.

timroy··on Taskwarrior – intelligent TODO list
Because a couple people here have expressed curiosity, here's what I like about org-mode.

1. The workflow is key. From any document, if I want to note down a task, I use org-capture. This creates a to-do item in To-Do.org. Alternatively, I can use org-capture to create a blog post, or an item for org-drill, or whatever. In either case, I don't break my flow of thought.

org-capture to create a new task looks like the equivalent of "task add" on Taskwarrior, except you do it from anywhere inside Emacs, not from the command line.

2. The org agenda shows all upcoming scheduled tasks. I also use org-habit, which are just repeating tasks that show how often you've completed them (and can prompt for a note when you mark it as done - "30 pushups" for TODO: exercise, or whatever).

3. I can "clock in" on a task in To-Do, and when I'm done archive the task in an automatically-created archive file. I can then see total time worked on that day, broken down by task. When clocking in, org prompts me for a time estimate.

4. Because all tasks are just bullet-points, I can nest sub-tasks, and expand or collapse them, like the app Workflowy. The top-level task can show percent or fraction of sub-tasks completed.

5. Best of all, at the end of the day, and despite all this manipulation, it's just text. I can edit time spent on a task, or whatever. There's no hidden magic.

This workflow is pretty GTD-ish, because it helps you get everything out of your head on the fly, and break things down into sub-tasks. It also works well with SRS and incremental reading. I see myself sticking with this, but I've used other systems productively, so whatever floats your boat.

timroy··on Silicon Valley engineer negotiated a starting salary from 120k to 250k
Hmmm. Where do you get that from this article, or his blog post?

Sure, he did get the 23andMe interview from a friend. But Google? and AirBnB? and Yelp? and Uber? and Twitch? Man, that would be a lot of connections.

Ben Horowitz carefully orchestrated a bidding war when it came time to sell his company. Qureshi "cracked the coding interview" and then orchestrated a feeding frenzy of a bidding war.

A well-played hand. ;-)

timroy··on The Unintended Consequences of Trying to Replicate Research
Can you explain what you mean by "it simply gives the author's a narrative to fake"?

At the very least, pre-registration helps guard against the "file-drawer" effect, where a negative result simply goes in the trash, and no one ever knows it occurred.

If you mean that pre-registration will not prevent jiggling the results until the researcher gets a significant p-value, then I agree that many forms of pre-registration which lack registration of the analysis and so on will allow the authors to fake the narrative.

timroy··on Why do so many people continue to pursue doctorates?
Thanks for the advice, that all sounds right to me. I particularly like the point about the $TOPIC of the moment.

The roll-your-own-company lab approach sounds a little better, overall. One tricky thing is that I'd have a lot more credibility starting a biotech company with a Ph.D. Right now I'm considering a Ph.D. to get the training and credibility (union card, as someone else said). Still not a slam dunk, though - Transcriptic's founder just has a bachelor's.

timroy··on Why do so many people continue to pursue doctorates?
I've spent the last couple of weeks intensively researching paths into the life sciences without a PhD (I'm deciding whether to go get one).

I haven't found a way in either. If you start your own company somewhere in the field, or otherwise support yourself, you can rock and roll as an indie researcher. Otherwise, a Ph.D. seems necessary.

I wonder if this will change over the next decade, as synthetic biology continues to expand rapidly.

timroy··on Job hopping helped Silicon Valley thrive. Why do other states restrict it?
Just saw your reply below, so I'll just pretend you've posted the same reply here. ;-)
timroy··on Job hopping helped Silicon Valley thrive. Why do other states restrict it?
Contract enforcement is a government activity, though. To enforce a contract, you ask the government (via the courts) to force the other party to give you assets, or not to work somewhere, etc.

By the same reasoning, if I sue you for defamation for calling me a lamebrained chucklehead, courts refuse to entertain the suit because the government won't restrict free speech. You're entitled to express your opinion, and the government won't assist me in suppressing your speech.

In many states, the government is happy to assist employers in restricting job-hopping.

I take your point that this government activity has its immediate catalyst in private actions in the free market, and that's different in important ways from other government activity. But still.

timroy··on Tinker with a Neural Network in Your Browser
This demonstration goes really well with Michael Nielsen's http://neuralnetworksanddeeplearning.com/. At the bottom of the page the author gives a shout out to Nielsen, Bengio, and others.

For someone (like me) who's done a bit of reading but not much implementation, this playground is fantastic!

timroy··on Sci-Hub, spiritual successor to Aaron Swartz, angering publishers all over again
Sci-Hub's sort of "civil disobedience" avoids the need to change the system at all, and so it doesn't matter if Sci-Hub changes the system. Hoping that over the next decade we can implement legal changes to lower the costs to the system doesn't help the researchers who need access - for their careers and for their (presumably useful) research - right now. :-) good devil's advocate question
timroy··on SpaceX is launching an inflatable space habitat
I can recommend Gerard O'Neill's The High Frontier. https://www.scribd.com/doc/239652061/The-High-Frontier-Human...

Thanks for the recommendation for The Millenium Project, jasonpeacock, I'll check it out. :-)

Page 1 of 2Next →