skysight-inc/HackerNews huggingface dataset:
one quick piece of feedback: resumes about stories. namely, your story: what have you done? how did you do it? what impact did it have? there's a hint of a story in your last internship - there was a proposal? you proposed it to management? you wrote some java code for hadoop? what did all of that do? but it's hidden amongst very low calorie things like "ssh key management" which is basically just copying blobs of text around. I don't care about your skill at catting two files together, I had someone write a program to do that. but there on one line is "Java software development for Hadoop." What was that about? I have some Hadoop, I have some people write Java code for it. could you do that? I have no idea, so, on to the next resume we go.

here is what I would write if something had happened to me:

"Working with my intern mentor, I developed a research proposal to discover previously unknown relationships in users of our web site. I designed a scoring function to be implemented in Hadoop, presented the design and motivation to management, implemented the scoring function, and ran it over our data. It improved costs in the business by %5."

who - you and someone else

did what - came up with an idea, pitched it, implemented it

why - because you saw a business use case

so what - it helped the business

way better story! and nothing in there about managing ssh keys.
Debugging lisp macros is like debugging anything else. You have functions that take an input and produce an output. The input is data, the output is data, and there aren't likely side effects. Use the same tools to debug macros that you would use to debug other functions. We have debuggers, tracers, and the repl to help us debug macros, since macros are just normal lisp functions (that run at a different time than "normal" code).
Thanks. I've never had any problems with constructive criticism, no matter how harsh it might seem (often that is where you learn the most). The problem is when people make disrespectful, disparaging, insulting remarks (which is against both the NumFocus & Julia community standards), and nothing is done about it, which has ended up driving away several people already. Hopefully that can be addressed.
I used to make a ton of these sorts of art generators! I love seeing this stuff. Thank you for posting this.

When Flash died off, it took with it a wonderful environment for creating generative/interactive art. Even though we've had the (limited but approachable) canvas API these past few years, I feel like we're only now starting to see a resurgence in the generative web art space. Flash had a wonderful collection of composable filters that were a gentler form of fragment shaders — absolutely battery-melting, but gorgeous and powerful. A small step toward GL, much easier to get into than ShaderToy, more approachable than Max/MSP/Jitter even. I'm glad Flash died, but I'm sad that nothing has sprung up and improved on it since. Perhaps it's time for the second coming of HyperCard.

If anyone's curious, here's one of mine: http://ivanish.ca/toy/eigenvectors/ — Flash required, natch.
Grsec consists of a few systems. One of them is RBAC, which is an access control part for userspace applications. It works similar to selinux/apparmor, but it's not based on LSM interface (as far as I know, but feel free to correct me).

Compared to SELinux, RBAC misses some very specific features, like dbus calls filtering for example, but otherwise those 3 systems are fairly comparable. RBAC uses AppArmor approach of filtering based on paths rather than inodes/attributes.

But grsec as a whole is much larger. It prevents way more attacks at kernel and userspace level than LSM implementations can see. https://grsecurity.net/compare.php should give you a general idea.

Also, there's nothing preventing you from using selinux, apparmor, or something else with grsec kernel - they can still run together.
Why cryonics makes sense
As a native English speaker who only speaks a little German, if everyone agreed that the world should switch over to Mandarin and standardize on it, I would be fine with it.

In my opinion, having a standardized language is very important. There are a number of different groups online that I'm interested in, but due to language barriers, I can't be part of them. Could I learn all those different languages? Yes, but in my opinion it wouldn't be worth the effort.
20 minutes, 0 apps, 0 interviews. The guys running the C course I did offered me a job at the end of it!

Include as many skills as you can on your cv - so much depends on automated search.

As you've got friends in tech, have you got them to rip your CV to shreds? If not, you should. It's a sales document, not just a statement of experience, treat it as such.

Treat your first 5 interviews as "just practice". You'll forget to mention something, make a silly mistake or three, give a bad answer or two. Don't stress, just learn from them. You'll relax more if you view the first 5 as practice, maybe enough to get an offer from one of the practice meetings!

Do all you can to sidestep recruiters and apply directly. Small companies are usually much more interesting and won't be using recruiters.

It's a numbers game, so along with lots of applications, bear in mind if you have 3 of 5 "essential" skills you should probably apply anyway. You'd be surprised how often those essentials aren't - it's a numbers game for the recruiting company too.
It's expected that the Constitution doesn't contradict a state's longer-term interests (senators serve longer terms than those in congress) and if it does, it will be amended.

Note that's quite different from saying senators should serve the interests of a national government.
I wonder what percentage of hit and runs get a license plate number, and what percentage of the ones that _do_ get an id eventually end up with the insurance company in question recovering costs from the at-fault driver? My gut feel? The number of hit and runs and the insurance company costs is likely to be a very small part of the costs of running an insurance company, and that the rate of recovery from the identified hit and runs is probably a vanishingly small amount in the big picture. Maybe I'm being classist/racist/prejudiced here, but I'd guess there's very few hit and runs done by fully insured Tesla drivers on 200k+ a year - compared to hit and runs done by some variation/combination of unlicensed drivers in uninsured vehicles by people with no assets or income to make it viable to recover from.

I'd love to see some data, but my back-of-the-envelope analysis reckons this wouldn't even budge the needle on my insurance costs.
Common Lisp supports compile time type checking: https://news.ycombinator.com/item?id=11529039

Have you seen Shen? http://shenlanguage.org/
> as if making everything a function call solves all problems

There are also special forms and macros.

> not how many functions you define

I've never seen anyone argue that this is what makes lisp good.
ISIS launches an official Android app for kids
Twilio or Google Voice?
That doesn't give you any improvement in the container by default. Only the host's kernel matters in case of grsec.
Big corporations don't generally share data with each other. It's more like the government, Google, Apple, Facebook, Microsoft, Amazon, Netflix, and numerous black hat spyware vendors are all monitoring you, and none of them trust anybody else. People inside Google were fucking pissed when the NSA spying practices were revealed, people inside Apple regularly block Google's apps for privacy concerns, people inside Google are regularly battling against spyware, people inside Facebook try to get you to share everything about you and your friends voluntarily while Google tries to provide alternatives that don't involve giving Facebook the keys to your life (but do involve giving them to Google), people inside Microsoft copy & scrape Google to try and grab whatever data Google happens to have, people inside the government are spying on all of the above.

Believing that everybody is out to get you is a sign of paranoia. Believing that people and organization act in their own self-interest is generally a pretty accurate model.
Right, so how do you get from Ruby strings (various encodings) to a Rust string? The sample code just calls std::str::from_utf8_unchecked(s) which is obviously not dealing with Ruby encodings.
Any society will trade liberty for food and safety.
Optimizing Transcoder Quality Targets Using a Neural Network [pdf]
The Rust version does a type coercion from Ruby VALUE to Rust String. The type coercions are defined generically using Rust traits (see the Helix README) so once somebody defines RubyString -> String once everyone benefits.

In this case, the coercion needs to ask Ruby for the encoding tag and ask Ruby to validate the encoding (which is does often enough that it's often cached) but after that we can safely coerce directly into a UTF8 string.

If we wanted to support other encodings, we could fall back to using Ruby's transcoding support (string.encode("UTF8")) and again, once someone does the work once it'll work for all helix users.
Organizational Targets Are Not Estimates
They implemented the Nix model in Guile, so inspiration is selling it short. Although Guix have arguably passed Nix in terms of features already, with a much better command-line tool, a linter, importers for several external package registries and grafting[0] which is a real pain point in Nix.

I think part of the reason they are now cruising past Nix (despite 1/10th of the users) is that it's written in a proper programming language, and not a home-made language that relies heavily on bash.

That said, I'm really happy with NixOS after two years, and would not consider going back to any "conventional" distro for my own workstation. Coming from a Gentoo background, there is nothing like screwing up your system and simply booting into the previous generation :)

Having the entire system configuration in one place that can be version controlled is a big plus too. You can create a live CD, VM, container etc from the very same code.

Nix and Guix can also be used standalone (think Homebrew or Gentoo Prefix), and can be very handy shell tools. E.g. `guix environment foo`[1] will drop you to an ephemeral shell environment with all build dependencies of package foo available.

0: https://www.gnu.org/software/guix/manual/html_node/Security-...

1: https://www.gnu.org/software/guix/manual/html_node/Invoking-...
I asked this question myself when I first started and I think some of these answers are a little too 'SF'. Drop me a line at joelthecoder@gmail.com and I would be happy to share and give feedback.

FYI I'm in Toronto.
On one hand, it's isn't a false choice -- the reality is that if you want to support a political candidate in the US in 2016, you're making that exact choice.

On the other, I totally agree -- they both want to legislate morality.

On the gripping hand, I'm forced to wonder if there was a situation where conservatives started burning their garbage in their home, would liberals be OK with it? Or is the "gay sex in the home" thing only relevant because it happens to be the Republicans big fear?

assuming it were known but not spread, e.g. people proudly announced burn pits, but captured and buried their exhaust. That's the only way to torture this analogy into shape.
The war where government agencies compete for more resources probably don't help either.
I'm in the midst of a (long, long overdue) redesign on the principle site I maintain, and just discovered flexbox. It's kind of jaw-dropping how much simpler it makes everything. Flexbox plus box-sizing: border-box allowed me to solve in about fifteen minutes layout problems that had previously taken me a few days and poking and Googling and cursing.
Your walking style identifies you better than face. Are you going to walk differently once you put a hat and sunglasses on?
Heh! Finally a profitable pivot idea for uBeam! Get their ultrasound transmitters mounted in hats or sunglasses, instant "privacy shield"! ;-)

(Bug report #0000001: "I charged my iPhone up by carefully holding it within 8 inches of my uBean transducer all night then when I went to make a call in the morning with my uBeam Privacy Sunglasses(tm) on, the other party couldn't hear anything I said." Response: "Closed WONTFIX. You're holding it wrong.")
I've only played with Lisps, so can't quite say I've had the 'enlightenment' experience, but, realizing that "I know how to manipulate lists...and my program is just another list (of lists of lists of lists)" was a bit eye opening.

The regularity of the language makes it so that taking advantage of this is far more reasonable (both a logical thing to do, and something that can be reasoned about) than any other language I've seen (where the closest equivalent would be the eye gougingly bad decision to read in your code as a string and perform string operations to munge it and then 'eval' it. Or, arguably, since this is obviously metaprogramming, reflection, but there it still ends up being something 'special', something very different than just writing a program, and as such is still frowned upon. Lisp is homoiconic, and realizing the ramifications of that made metaprogramming go from a "avoid if at all possible" to just another tool, one that sometimes provides the most elegant solutions, and is reasonable to choose in those situations)
Accidental downvote, sorry. Counterexample: Holy-C isn't typechecked.
I wonder if Sussman has come across Shen [1]?

It is a small Lisp based on Klambda, comprised of just 43 instructions, that has been ported to Common Lisp (SBCL), Haskell, Ruby and Emacs Lisp (just this month). It has also been ported to Python, Clojure, Javascript, Java, and the JVM which are not up to Shen 19 certification yet.

Shen has pattern matching, an integrated fully functional Prolog, static type checking and even optional lazy evaluation. It has a very strong type system.

Shen commercial has Griffin, an optimized compiler, SML (Shen Markup Language) to generate HTML, and concurrency.

Popularity has not been my reason for selecting a language. I have been using J, an APL-derived, language for years, and I also like APL, K, and now Q! It is amusing to see developers rediscover APL concepts after 50 or more years!

[1] http://shenlanguage.org/
[2] jsoftware.com
> large parts of grsec were basically a competitor to SELinux.

Why do you think so? RBAC is an optional part that requires extra configuration to even activate. There's a lot of benefit in running grsec kernel with SELinux as MAC. These features neither depend on RBAC nor even use it.

It's kind of like smack, selinux, apparmor, yama, etc. You can think some of them are broken/worse than others. You're not forced to use them.
They're arguably right to freak out. It takes a certain kind of life experience to think about, build, and maintain the systems we rely on to provide the necessities of life. It's probably not a great idea to destroy our society's ability to create adults without some kind of replacement path.

As an aside, I'm tentatively in support of basic income. This is one of the two major points that I worry about, along with rent-seeking behavior. The tl;dr of that argument is the mechanization of agriculture has already freed up tons of man-hours of labor, and the end result of that was systematic reaction that made living in a developed country approximately as expensive as poor people can afford if they work as hard as they have been.
I finished college, and then realized that I wasn't going to just get a job since I didn't have the web dev skills for the jobs I wanted.

So for the next 4 months, I learned all aspects of building a website - backend, frontend, deployment and applied for jobs along the way. The key however for me was that I blogged about it the entire way. Being able to show employers not only finished products, but words showing thought process. If you can show results like that, people will want you to work for them.
About 200 applications over 3 months. This resulted in:
15 phone screens -> 10 coding challenges -> 6 onsite interviews

I'm a bootcamp grad in the Bay Area that made a career change from mechanical engineering.
The interview process for the job I ended up taking consisted of a phone screen, a coding challenge, an online live coding session, and then an onsite interview. The entire interview process took about 3 weeks.

The best way to get an interview is to get an internal referral from someone at the company.

Interviewing is just like any other skill, the more you do the better you'll get at it. So try to do as many interviews as possible. The job search is a grind, good luck!
Ah, yes! You're correct. I spend most of my GC'd time in languages that don't have such a value vs. reference dichotomy, and I'd completely forgotten about it.
Electricity is $0.08-0.15 per KWH; gas is about $2-3/gallon. (There are obviously exceptions -- Hawaii electricity is almost German prices, and it is progressive, so if you use a lot you pay a high marginal rate. There are also specific areas with really expensive gas, maybe 2x the cheapest gas.)

Electric seems like an easy choice in the UK -- high fuel costs and not high electricity prices -- and a less obviously good choice in places in the US with cheap fuel (Midwest, south) but expensive power (I think some small utilities have high rates due to legacy costs)

It doesn't seem like a clear winner in Germany yet, or at least is relatively less good than in California (high fuel costs, high subsidies for electric cars, high traffic, and relatively low electric costs).

If I lived in Germany (goal!) I'd still consider getting an electric as a city car if everything else worked out, just for environmental reasons, but I'd probably still be tempted to get a 550d or something instead if I were doing long trips. Whereas in California and Washington State I definitely want a Model 3 next, or if I had to buy today, maybe an i3.
> I've heard debugging Lisp macros can be quite hard

It's much easier now that there is slime-macrostep[0]. Hmm. Maybe I should write another debugging lisp post on it.

[0] http://kvardek-du.kerno.org/2016/02/slime-macrostep.html
"repackage the recording"? wtf? Nobody said anything about format shifting. The doctrine of First sale says you can always resell your copy, physical or otherwise. 50 years ago your were "buying" a copy when you bought e.g. a vinyl record.

(Sometimes people attempt to confuse the situation by conflating the purchase of a copy of a creative work (one instance) with the rights regarding new copies that copyright grants to the creator.)

Regardless, I said property rights, not the temporary monopoly granted by copyright. I'm not talking about minor things covered by copyright. John Deere is the current example of eroded property rights, where thy retain de facto ownership through the copyright of the firmware.
I echo the other voices saying canvas and pure JS (or, in my case, CoffeeScript or ClojureScript). The canvas API is extremely intuitive — aside from the boilerplate setup, perhaps — and you can make some really neat things with it very quickly.

The home page for my personal site has a starfield made entirely with canvas: http://ivanish.ca — best to view in a dark room so you can see all the pseudo-nebulae.

Source code (if it helps):
https://github.com/ivanreese/ivanish/blob/master/source/scri...

You might also want to consider Elm, but I have very little first-hand experience with it: http://elm-lang.org
I disagree with your assessment, and I guess with Sussman's appraisal as well.

I believe that you are mistaken in your belief that Lisp isn't the most advanced language. The submitted thread contains many comments that state that Lisp is basically a pure implementation of the untyped lambda calculus. I don't think this is correct -- Lisp is itself a unique model of computing, and it generally unifies Turing's and Church's computational model in a relatively unbiased manner IMO. For that reason, I regard Lisp as the most flexible languages of all "multi-paradigmed" languages. The Lisp machine's software was basically exclusively implemented in Lisp; the fact that developers could comfortably accomplish that testifies to Lisp's flexibility.

In Lisp, entire linguistic constructs can be dynamically created to iteratively solve a problem. That's basically a bunch of buzzwords, but
I think the statement holds significance. I've read comments elsewhere regarding Lisp as the "Maxwell's equations" of PLT. I agree with that. If you're not familiar with the meta-circular evaluator, I encourage you to read up on it, as it justifies this statement.

That being said, Haskell's type system is really fantastic. I'd love an implementation of a Lisp with a Hindley Milner-esque type system.

Basically, I think Lisp is the most advanced language because it captures what a language is perfectly. This makes it free to involve and embrace new ideas, and has contributed to its continual success and long life.
I didn't create the term RDD - that credit goes to

http://radar.oreilly.com/2014/10/resume-driven-development.h...

I do RDD since I want to watch the world burn and reap as much benefit from it before I drop dead.
But what are the practical implications? What things can lisps do that nothing else can? Macros seem to be the biggest thing mentioned; pg says that was what let him write features so much faster than competitors. On the next hand he says he can't imagine not having different types of items in a list.

And like Cypher, if you reach some higher enlightenment, then can't use it (practical constraints) it just makes you want to go back. E.g. a friend that recently picked up F# now laments so much about having to work in C#; it's now painful. Whereas a couple months ago, C# was pretty nice.

1: Though I'd like to see which features really made much of a difference.
I don't think everybody is out to get everybody else in a homogeneous manner. There is obviously a higher degree of collaboration between similar entities.

I think it's pretty obvious that we have the government on one side and corporations on the other.

We need to make sure that a healthy equilibrium stays in place between the two. Right now I just feel that corporations are winning.
Your topic is broad; but as a precursor, I have a bias, in that I'm a free speech absolutist.

There's a difference between having a meet-up or speech on campus on specialized topics and blocking all dissenting opinions because of feelings (not logic mind you.) Well before "safe spaces" were a thing, when I was in school, I could go to speeches that had minority opinions...no one ever disrespected the speakers; even if we had topic of disagreeing. I went to a viewing of a trans documentary, there was no "safe space," there was a good discussion afterwards. There was no need for a "safe space," because we were all adults, we aren't children.

What you are essentially describing is a forum about specific topics. That's not a "safe space," it may have been one but that's not quite an accurate representation.

One example of a "safe space" gone wrong has been the banning of certain speakers (that were already booked) from speaking on campus, because it violated student's "safe space." This has happened to a number of people, including Bill Maher and Condoleezza Rice. If you can't listen to the views of those you disagree with, you are not going to be a tolerant person. It encourages uniformity of ideas, the opposite of what academic inquiry should be about.

Then, we have things like "free speech zones" on campus, designated areas on campus where you are allowed to speak freely, displaying free speech on other part of campus can get you expelled. (read more about these on thefire.org.)

Anyhow, here's an op-ed from Michael Bloomberg and Charles Koch (not example bed fellows) http://www.wsj.com/articles/why-free-speech-matters-on-campu...

I do really encourage you to read the thefire.org, campus practices on free speech are often awful. You can look up your own school on their site and view their score on free speech.