HN user

timroy

94 karma
Posts4
Comments38
View on HN

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.

Voltaire’s Luck 10 years ago

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.

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.

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.

A Farewell to FRP 10 years ago

I have heard only good things about Schema, and I probably should have invested the time to understand and use it more intensively.

A Farewell to FRP 10 years ago

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.

A Farewell to FRP 10 years ago

"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).

A Farewell to FRP 10 years ago

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 (?).

A Farewell to FRP 10 years ago

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.

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).

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.

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.

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.

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. ;-)

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.

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.

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.

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.

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