sonnym | 8 years ago | on: Ask HN: Who is hiring? (April 2018)
sonnym's comments
sonnym | 11 years ago | on: Ask HN: How much do you remember from books you read only once?
I think the most important thing is chunking[1]. You remember key things, such as storylines or plots from fiction, or, with technical writing, where to return if you find yourself needing a particular concept in practice.
sonnym | 11 years ago
This is a working example of the Pong example from the Elm website: https://github.com/sonnym/elm-expressway_pong
sonnym | 11 years ago
sonnym | 11 years ago
Jose Valim's Crafting Rails Applications[1] is a wonderful resource, since it deliberately sets out to peel back the layers of magic. A lot of the techniques are ones I probably would not use in practice (storing views in the database and rendering them!), but they serve to elucidate the operation of the entire view stack. Really good stuff.
Two other good books are Rails Antipatterns[2] and Objects on Rails[3]. Neither of them has been updated in a long time, but the general principles will still hold. The former is more practical, the latter more theoretical; precscriptive and fanciful food for thought, respectively. Both solid.
1. https://pragprog.com/book/jvrails2/crafting-rails-4-applicat...
sonnym | 11 years ago
sonnym | 11 years ago
sonnym | 11 years ago | on: An Awk Primer
1. http://cm.bell-labs.com/cm/cs/awkbook/ 2. https://www.goodreads.com/book/show/703101.The_awk_Programmi...
sonnym | 11 years ago
1. http://web.ics.purdue.edu/~drkelly/DFWKenyonAddress2005.pdf
sonnym | 12 years ago | on: A List of JavaScript Tools and Libraries
That said, a lot of the tools are really good. I would, personally, argue that underscore is the most important javascript library in existence. It transcends frontend and backend, server and client. It is data manipulation at its finest. It brings functional programming paradigms to javascript. It is beautiful.
After spewing this mantra, one of my colleagues wrote a blog post about it that presents a nice introduction[1]. I would also highly recommend Michael Fogus's book, Functional Javascript[2], that heavily relies on it.
1. http://singlebrook.com/blog/simplify-your-javascript-with-un... 2. http://shop.oreilly.com/product/0636920028857.do
sonnym | 12 years ago
sonnym | 12 years ago | on: No more `grunt watch` – faster builds with the Broccoli asset pipeline
I want to mention mincer[1], which I have used in the past for compiling assets, and it has been an entirely painless process. Definitely take a look at it as an alternative, which has been around longer and has seen assistance from the folks behind sprockets[2] (according to the README) for creating a similar API.
1. https://github.com/nodeca/mincer 2. https://github.com/sstephenson/sprockets
sonnym | 12 years ago
http://thedailywtf.com/Articles/Database-Changes-Done-Right....
sonnym | 12 years ago
sonnym | 12 years ago | on: Getting Meteor to 1.0
It is about my desire to work on a node application in what I consider to be a standard way. I want to be able to treat my entire application as a node package, leveraging npm for dependency resolution.
Think of it like a rails application. For local development, you probably use rbenv (or rvm), bundler, and have the version of rails you need listed in your Gemfile. You allow the package manager provided with the language and maybe a layer to keep environments separated (already provided by npm) to take care of dependency resolution and updates.
I want a node framework where I can use the package.json file as one does the Gemfile for ruby applications.
sonnym | 12 years ago | on: Getting Meteor to 1.0
It sounds like the installation script, aside from handling the MongoDB and node setup, could be treated like a typical node package. Based on the fact that meteor has no package.json, seemingly none of those core packages are installed via npm either.
I may be alone in this, but I guess I would just prefer if my web framework expected me to have the interpreter and database installed, and used the package manager already provided for this environment.
sonnym | 12 years ago | on: Getting Meteor to 1.0
I really wanted to like it. I was predisposed to do so.
But from the very beginning, I was confronted with something I consider a deal breaker. While I am wary and generally disinclined toward the increasingly popular pattern of curl an installation script and pipe into sh, in this case it is not only skeptical, it is downright ludicrous. Why would I, nay anyone, want to install an npm package this way? Should not the installation instructions simply be `npm install -g meteor`? And what if I need to work on multiple meteor projects with different versions? Surely there is support for adding it to your package.json file, but why is this not the primary means of installation and well documented?
Maybe I am being overly sensitive to these issues, but it really baffled me that the very foundation upon which a meteor project is predicated would be contradictory to the typical node workflow. I will probably try meteor to spike out a project at some point in time, but I do not foresee myself using it extensively in the near future.
sonnym | 12 years ago
The official kernel mirror on github[1] does not have any of these extraneous branches, and, unsurprisingly, makes good use of the tagging ability built into git.
In fact, the kernel developers prefer[2,3] that feature branches are always based on a known working state if possible, rather than some arbitrarily moving branch, be it called master or develop. That said, the master branch of the linux kernel is, by no means, relegated to only having merge commits from feature branches that correspond to releases.
1. https://github.com/torvalds/linux 2. http://lwn.net/Articles/328436/ 3. http://lwn.net/Articles/328438/
sonnym | 12 years ago | on: A successful Git branching model (2010)
After a couple years of using this model, I have done away with using a develop or release branches whatsoever. Develop everything in feature branches, based on either the most recent production tag or the master branch, depending on if it is a hotfix or if it is new development work. A lot of people do not seem to understand you can just checkout a tag, so you do not need to keep a number of hotfix branches around for in-house repositories.
Now, it would be nice to develop a better tagging strategy for rolling updates to a web application, but, for the time being, simply using a stage and production tag work well enough. This is certainly suboptimal and can cause problems, and I cannot recommend doing so. Instead, use production and stage tags with either sane version numbers or simple timestamps. It would be best to only promote from staging to production, but that is not exactly necessary. Most of my thoughts on the release management side of things comes from Alex at The Daily WTF [1].
1. http://thedailywtf.com/Articles/Release-Management-Done-Righ...
sonnym | 12 years ago
I guess that means, thus far, the book is about a third of each: very interesting, modestly interesting, and mediocre. Not too bad considering each chapter is written by different individuals.
Our Assessments team has a simple mission: help candidates get the right job. We let people build a profile to demonstrate their knowledge, skills, and abilities using job assessments… we’re trying to make the resume a thing of the past. Our team is highly distributed geographically so this position is open to remote candidates anywhere in the US or Canada as well as in our offices in Austin and San Francisco.Our team is nimble and scrappy. We ship new capabilities often and quickly by explicitly asking ourselves the 80/20 question a.k.a. the Pareto Principle.
You will:
Build the core functionality of our assessments platform and own design and execution
Develop our API and integrations with external applicant tracking systems like Greenhouse and Jobvite
Scale to serve 100M+ job seekers
Please apply here:
https://www.indeed.jobs/career/JobDetail/Sr-Remote-Java-Engi....
https://www.indeed.jobs/career/JobDetail/Remote-Software-Eng....
Indeed provides a variety of benefits that help us focus on our mission of helping people get jobs.
View our bounty of perks: http://indeedhi.re/IndeedBenefits
Please feel free to e-mail me directly at [email protected].