Hashrocket Blog

hashrocket.com · Company blog · on HN since 2008

Hashrocket, a web development consultancy, publishes technical posts on PostgreSQL, Rails, Elixir, Ember, and other web tools.

What HN saysHN commenters link its PostgreSQL materialized view strategies post as useful, and Hashrocket staff use threads to post job openings.
56HN people shared it
27linked it in comments
68stories submitted
523story points
11 months agolast shared
2008people per year2026

Most-shared posts

  1. 1
    Materialized View Strategies Using PostgreSQL
    11 people · 22 points · first shared 2015 · discussion on HN
  2. 2
  3. 3
  4. 4
    Using Datomic as a Graph Database
    4 people · 8 points · first shared 2014 · 1 comments on HN
  5. 5
    JavaScript Object Destructuring Tricks
    3 people · 8 points · first shared 2019 · discussion on HN
  6. 6
    Ember Routing: The When and Why of Nesting
    3 people · 3 points · first shared 2013 · discussion on HN
  7. 7
  8. 8
    Format Your Elixir Code Now
    2 people · 6 points · first shared 2017 · 1 comments on HN
  9. 9
    Working with Email Addresses in PostgreSQL
    2 people · 5 points · first shared 2016 · discussion on HN
  10. 10
    Using Broccoli in your next Ember CLI app
    2 people · 1 points · first shared 2015 · discussion on HN
  11. 11
    Mark smith
    2 people · first shared 2010
  12. 12
    Marian phelan
    2 people · first shared 2010
  13. 13
    Jobs
    2 people · first shared 2011
  14. 14
    The new X-Men movie explained in Git
    1 people · 169 points · first shared 2014 · 40 comments on HN
  15. 15
    Let's Write Some Bad Ruby
    1 people · 64 points · first shared 2015 · 35 comments on HN

What HN people wrote when they linked it

always_good · 2018-05-03
But how do you determine if someone's a cultural fit without expending your time and their time? Just seems unavoidable to me, though that's what people often complain about here. Like they want to get a job without putting in any skin of their own. https://hashrocket.com/ had a pretty extreme interview where they flew me out to Florida to pair-program with them for a week. It was a really pleasant experience. Every day I would pair-program with someone new on production code. By the end of the week I knew exactly if it was the job I was looking for. (Great group of people though and wish I'd known how to keep in contact with people professionally in my early 20s) So unless everyone can afford to do that, you have to extrapolate from far more limited data.
BenoitP · 2017-01-26
+1 for incremental materialized views. There are workarounds for emulating it with triggers, though. I have found the following discussion to have helped in a problem I had: https://hashrocket.com/blog/posts/materialized-view-strategies-using-p…
steveklabnik · 2014-06-12
> Even extremely common patterns that will be present in virtually every web app have no examples that I can find anywhere on the web. A great example is simple nested resources, where the URL is something like `/tv_shows/555/seasons/3/episodes/2`. http://emberjs.com/guides/routing/defining-your-routes/#toc_nested-res… ? See also http://hashrocket.com/blog/posts/ember-routing-the-when-and-why-of-nes… and http://ember101.com/videos/007-nested-routes/ These are the first three results for "Ember nested routes" on Google. They're all pretty simple and straightforward. Hope that helps!
tialys · 2011-10-01
Jacksonville, FL Hashrocket is hiring a front end web developer. Familiarity with Rails is preferred. Really excellent benefits, and really awesome people to work with. http://hashrocket.com/people/work-at-hashrocket/front-end-developer
obiefernandez · 2011-01-06
In related news, Hashrocket (the consultancy) is alive and well, with no intentions of changing our name to Hashcolon. http://hashrocket.com/ In fact, like almost everyone else in our space we're looking to hire => http://hashrocket.com/jobs
jackowayed · 2010-07-02
Hashrocket is a well-known Rails consulting company, and Obie Fernandez is a founder and is pretty well-known as well. http://hashrocket.com/
chaostheory · 2008-04-29
This is more realistic in the long haul: http://hashrocket.com/ "Your idea, implemented in 3 days. No joke." The last time I checked it cost 30k... ideas are cheap and even counting the really good ideas, a lot of people tend to have the same ones. If the idea submitters have nothing to contribute besides the idea, I feel that you're creating a self imposed 'tax' on yourselves. I guess it's useful to you guys if you think that you're not creative enough to come up with any good ideas on your own.
elcritch · 2020-01-28
> I picked up _Programming Erlang_ because I like Joe. I'm trying to understand why the platform, and the accompanying language(s), aren't more widely used? People seem to speak very highly about Elixir, BEAM, and OTP. It all seems really great... Watching videos of Joe talk super impressed me. He kept the same enthusiasm for programming as any college age programmer. That's impressive! > From @hajile >>BEAM is about an order of magnitude faster than Cpython ...If you prefer Ruby syntax over Python, there is no contest here. >>BEAM is slower than the JVM, but much more stable. > The second quote seems to be a pretty reasonable trade off (my next question is, how much slower?). There was a recent web-server benchmark that illustrates the performance and stability trade-off pretty well [1] (or older web-socket one [2]). The StressGrid benchmark shows Erlang/Cowboy achieving about roughly 1/2-1/3 the speed of the compiled options (Java & Go), and roughly double that of NodeJS. Erlang/Cowboy maintained very stable latency numbers after hitting it's peak however (see graph in [3]). There's an oddity with Cowboy 2, that appears to be due to HTTP/2 support but can be disabled (though HTTP/2 in theory should support faster client responses with less multiplexing of HTTP requests). In general I'd say BEAM is on average faster than CPython, though recent CPython 3.x versions have improved a lot. Importantly BEAM is one of the few dynamic language/VM's that supports multi-core…
hackercomplex · 2016-02-11
I have a theory about this stuff. Some programmers who need to "blow off" a day here or there spend it by lounging around on the sofa playing video games. I don't mean to rag on gamers because I'm one myself, but the point is I'm fascinated by the fact that many video games are also "mental challenges" that are similar in several ways to computer programming and use similar parts of the brain. What factor(s) then make the game-play enjoyable while the heavy-lifting dev-work feels sometimes more tedious ? Maybe there is a way to adjust our methodology to feel more game-like, relaxing, and fun. I think I've actually stumbled upon a way to do this, allow me to explain: If you start to read about the statistics around social dynamics in MMORPG games then certain things fall out of the data, and game makers have picked up on these ideas and used them to make their games more fun and addictive, and I think these same insights can be applied to organize software development. Lets start with World of Warcarft. The statistics prove that World of Warcraft is a highly addictive game for many diverse people, but almost everyone agrees that if you were to join an empty server you would find that it's not an addictive game in one player mode. If you take this a bit further and say.. "ok, now you're on a server with other people, but you're not allowed to join a group, but you are allowed to conference with several players, exchange weapons and loot, and message individual…
hpvic03 · 2014-10-01
Hashrocket - Software Developer - Chicago || Jacksonville Beach, FL Hashrocket is a software consulting company that builds solutions for web and mobile, specializing in Ruby on Rails, iOS, and Android. We are hiring experienced Ruby on Rails and iOS developers to work on-site in our Chicago or Jacksonville locations. We look for a certain set of qualities in our development staff since we interact directly with non-technical clients and keep a very rapid development pace. We practice pair programming all the time, keep our project teams small (2-6) and focus on constantly delivering value to our clients through daily standups, rapid deployment and an agile mindset. We have a highly collaborative environment with no cubicles and no management hierarchy, which allows us to focus on delivering the best products possible for our clients. We take care of our own and offer great benefits to all our employees. * Salary based on experience * All expenses paid when you speak at an event * Annual budget for conference attendance * Company paid family healthcare premiums * Full 401k matching with no vesting period * Relocation expenses * Sustainable pace: 35 hours billable client work and 5 hours of open-source contributions per week Apply here: http://hashrocket.com/contact-us/jobs/developer/hacker-news
xenopia · 2010-07-04
A summary of how United's "business" works: 1) Design an "order form" that looks deceptively like a renewal form for the regular local yellow pages. The goal is to confuse the recipient that this is a renewal for your local yellow pages that you already subscribe to. Make the return address of your company say "YELLOW PAGES." Take advantage of the fact that the term Yellow Pages and the walking fingers logo are not copyrighted. 2) Have your shady lawyer review your order form and add enough disclaimers to cover your ass and comply with postal regulations. Everything is spelled out in the fine print. This is not a bill. You are ordering a service to be included in our book. We are not affiliated with your local phone company. We are not even going to send this book to anyone except other "subscribers" and a few libraries, etc. We will also put you on a website. 3) Mass mail this "Order Form" to your database of business names across the country. The response rate is small. But as the $300 fee is relatively high and your actual cost is negligible, the payoff is worth it. Note that by ordering you are set up to auto renew your $300 order. The book is published twice a year. 4) Send customers a bill. Charge credit card, get a check. Note that this could be an area where the prosecutor vastly overestimated the dollar amounts involved The total count of incoming mail was for order form replies. A smaller fraction of those recipients would actually have paid the bill which…
teej · 2009-02-14
The original post, reprinted here verbatim: A couple of Railsconfs ago, Courtenay and I did indeed discuss certification and I advocated an organization to set guidelines for what the characteristics and measurements that set apart a successful and disciplined Rails shop apart from the unwashed masses. Rather than trying to certify individuals (too easy to game!) I think it would be useful to have a certification process for organizations that involved an actual extensive interview process and audit of code and practices, with associated scorecards and registration in some sort of official directory. Yes, you would have to pay handsomely to get this certification, and the result would not necessarily be what you expect. The details for this is all very rough and frankly I don't know the value of it, just an idea that's been in the back of my mind for a long time so I'm putting it out there for debate. The name and concept is somewhat influenced by CMM, which I suppose is anathema to most Agilistas. I'm the first to admit that I don't know much about CMM other than it provides a scoring system for organizations. In a Rails context, you would establish a scorecard that categorized your shop on a scale of 0 to 3 (or whatever, just thinking out loud here) RMM0 "aka Cowboy level" - No formal development process - No test coverage - No standardized business practices - Static analysis failures RMM1 and RMM2 would have to be something in-between. RMM1 is considered negative.…
viksit · 2023-03-31
CapriciousCptl · 2021-02-22
As someone who basically sticks everything possible into Postgres, this is interesting! Streaming tools don't automatically cache things you need? I guess it's about time they do! Postgres, for instance, has a robust LRU mechanism that deals with OLTP quite competently. OLAP too if your indices are thought-out. Also, although built-in materialized views don't allow partial updates in Postgres, you can get a similar thing with normal tables and triggers. Hashrocket discussed that strategy here-- https://hashrocket.com/blog/posts/materialized-view-strategies-using-p… .
debaserab2 · 2020-01-17
You can do effectively the same thing using a physical table and triggers [1] if you want a pure postgres solution. I ended up with the same problem and just ended up using a physical table and implemented the updating logic at our app layer. Not exactly fun or easy to implement all the updating logic yourself though... [1] https://hashrocket.com/blog/posts/materialized-view-strategies-using-p…
gigatexal · 2019-11-08
Again not my idea. It was suggested to me in response to the very problem you’re having. I’m just so happy to have it as an idea that I didn’t want to keep it to myself. Here’s the link. https://hashrocket.com/blog/posts/materialized-view-strategies-using-p…
cpursley · 2019-10-11
Ok, here's a better comparison: "Websocket Shootout: Clojure, C++, Elixir, Go, NodeJS, and Ruby" https://hashrocket.com/blog/posts/websocket-shootout
iends · 2017-11-23
This is the only article I'm aware of that has comparisons between a number of languages/platforms: https://hashrocket.com/blog/posts/websocket-shootout
hcarvalhoalves · 2016-11-29
Neo4j focuses on modeling nodes and it's relationships, and allows you to attach metadata to the later, but doesn't really have transactions as first-class objects. Datomic focuses on modeling facts (entity-attribute-value). This is a very stable data representation that allows modelling tables, documents or graphs [1], on top of carrying transaction explicitly on an additional index for the time-travel magic. I guess Neo4j might make a good DB for ETL-ing into and running certain kinds of analysis. [1] https://hashrocket.com/blog/posts/using-datomic-as-a-graph-database
socmag · 2016-10-05
Doesn't really answer your question directly, but this was posted fairly recently. https://hashrocket.com/blog/posts/websocket-shootout I've used websocketpp in the past (in C++), with fairly good results, but uWebSockets is in a whole other league; especially in a multi-threaded server.
jbranchaud · 2016-09-08
There is a companion blog post here https://hashrocket.com/blog/posts/websocket-shootout
rbxbx · 2011-01-31
We're hiring at Hashrocket. http://hashrocket.com/jobs Ruby, Agile, Pair Programming (all the time!), open source time, benefits, a team of super smart and quite enjoyable people to be around, and a pretty office at the beach to boot. We're also open to apprentices/internships, if you're interested feel free to email [email protected] and if you have any questions you can contact me personally [email protected] or @rbxbx on twitter. Cheers :)
maxdemarzi · 2010-07-02
Weird... wonder's what's going to happen to HashRocket. http://hashrocket.com/people/view/mark-smith/ "I am the Chief Morale Officer, in charge of alcohol and fun activities" http://hashrocket.com/people/view/marian-phelan/ Mariam is also getting charged with money laundering...
mixonic · 2015-04-11
Yeoman, Grunt, and Gulp are (I believe) all various implementations of a task runner. They chain tasks in different ways, but at the end of the day think of your asset build as a set of discrete steps. Broccoli (https://github.com/broccolijs/broccoli), the build tool written by Jo Liss and supported by the Ember community, is truly an asset pipeline tool. It is concerned with transformations to filesystems and file contents, not tasks. This makes Broccoli a faster and easier to use tool for implementing complex asset pipelines. The main domain object is "trees". A tree represents a directory hierarchy of files that will be regenerated on each build. Broccoli uses directories of symlinks in tmp/ to cache un-changed files from step to step, allowing it to restart a build at any depth and only process those files that change. Some links you might enjoy on Broccoli: * http://aexmachina.info/intro-to-broccoli/ * http://moduscreate.com/better-builds-begin-with-broccoli/ * http://hashrocket.com/blog/posts/broccoli-the-build-tool-not-the-veget… (how Broccoli is used in Ember-CLI) I can't speak to the weariness, but I can say that Broccoli is completely unlike Grunt, Gulp, or Yeoman and without it (or something like it) Ember-CLI and the next generation of build tools would be impossible. Broccoli has been in development since fall of 2013, and been used aggressively by Ember-CLI users since summer 2014. Give it a look!

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close