HNHacker News
TopNewBestAskShowJobs

tristan_juricek

147 karma · joined December 7, 2008

submissionscomments
tristan_juricek··on Burnout Comes in Three Varieties
It sure seems like most tech jobs would only need therapy as a means of last resort. Keeping a mindful eye towards burnout and adjusting your response to it based on the type seems like solid advice.

I see it as:

1. The complainer: sit down and negotiate a way that person can make a bigger impact that's measurable

2. The avoider: simply try to get this person to do something they are excited about

3. The worn-out individual: this person probably just needs a bit of regular recognition (and no overtime)

Personally, I find way more people in categories 1 and 2, though category 3 definitely happens in startup land where people work way too much and only see the mountain in front of them is never getting smaller.

Of course I'm being a bit of an armchair manager, but it seems like a fairly decent starting point.

tristan_juricek··on Class Hierarchies? Don't Do That
This approach to discussing inheritance treats JavaScript as if you're a Java or C++ programmer, and completely lacks any clarity with how inheritance in JavaScript really works.

Best intro I've read on the topic I'm talking about is from Alex Sexton (just read the last example, it really hits the nail on the head):

https://alexsexton.com/blog/2013/04/understanding-javascript...

So you might want a wee bit of hierarchy, if you're thinking like those "shared options" scenario, but not in the "OO type abstraction tree".

So, you might have something like a "Account.prototype.primeInterestRate" property that you can change in a running program, and then all the other types of account can calculate interest based on that shared property.

However, the more experienced jS developers I've met might take those "Account.prototype.balance" and "Account.prototype.deposit" methods, and push those into a "mixin" type (like "CurrentBalance") where those methods are copied (not inherited) onto the child class prototype, and those methods, might have initializer helpers to set up the "currentBalance" property they use. This mixin approach only gets gnarly if there's any feature envy. (Document your object properties clearly, folks. This is where javaScript's flexibility often becomes a crutch - lots of issues happen if mixin code uses "this.foo" for different things.)

Anyhow, what's interesting here is that Account carries the property that's shared, but CurrentBalance carries "behaviors", and is not shared, and your "child classes" like VisaDebitAccount embed both in different ways. It is a very different way of thinking about object relationships, and often works smoothly.

But if you're using classes in JavaScript like you would Java, well, then, you're not really using JavaScript, right? And, this whole talk about biological-style ontology just becomes the wrong metaphor, because while "humans are a primate" we can't change aspects of primates to add behavior to people!

tristan_juricek··on America Has a Black-Market Problem, Not a Drug Problem
A few different police departments in California are trying out camera systems. I've only heard about Rialto, but I know they're being tried out in the Bay Area, and I think wider Los Angeles.

http://www.theguardian.com/world/2013/nov/04/california-poli...

These aren't "GoPro" systems, so I wouldn't expect stunning HD.

I'm not sure about access at all though.

tristan_juricek··on Why is git pull considered harmful? (2013)
This sort of "git pull" slam is really just an aftershock of shooting yourself in the foot.

The UX of git is so different from other tools, but seems so similar. It's a real problem for newbies. It's easy to think you know what's going on, because is vaguely similar to other operations. And, for the impatient, the documentation is really, really obnoxious. And most developers I've met are fairly impatient.

End result: most developers I've met has shot themselves in the foot when they started to use git.

When I bring people onto git now, I start them with a nice visual tool in an existing repo; my current favorite is SourceTree. But that's not a requirement. The simple fact that they can a nice history log with see tags of "origin/master" and "master" usually triggers that "WTF" experience and they start asking the right questions. If I start them with a new repo, and then have them add, and stage, it's all a bunch of things they could figure out, and they get impatient, and then bad things happen when it comes time to play with others.

tristan_juricek··on Steve Jobs threatened Palm’s CEO, court documents reveal
Non-compete clauses are void in California

http://en.wikipedia.org/wiki/Non-compete_clause#California

tristan_juricek··on Google I/O announced for June 25-26
I wonder if people will be happier or more frustrated with the lottery setup.

And... I wonder if such a lottery system would help take on general ticket scalping. (I could see a lottery mechanism doing some kind of 'real person' verification.)

tristan_juricek··on I'm writing a book: "JavaScript Application Design: A Build First Approach"
edit: I could see this being just a good general approach to development. Like a concrete how-to on doing continuous delivery from day one.

I've even started using grunt with a C++ project I'm working on, and if I make sure that from day one I can start up from a new machine:

   % grunt init
... my life is better.

It's interesting, grunt is a nice "automation layer", as opposed to a build tool. I'm now using it to automate my build setup. Having that extra thing to bring it all together into one command makes it all so much easier.

tristan_juricek··on The Impossible Music of Black MIDI
The effect is just reminiscent of a very simple FM synth; you start with a sine wave and add another waveform whose cycle starts below the audible spectrum. Start cranking it up, and you don't hear any "pulse" it just takes on a different timbre.

So, by playing a bunch of notes really fast, you just end up with a different kind of buzz.

I'd rather just use a synth. This is like monkeying with waveforms using a step function. Kind of limited.

tristan_juricek··on Invest in Startups
I love this idea. I think this is a fantastic opportunity for us plebs to start speculating.

It would be very nice to see if the crowd has a different kind of investment trend from the accredited investors.

Edit: Mostly, I'm curious if there will be enough numbers to see a "wisdom of the crowd" effect or if it will actually just amplify whatever the big money tends to be attracted to.

tristan_juricek··on On the Symmetry between Microsoft and Apple
Right, it's a little disappointing that the blog of a fairly well-known economist just uses some basic anecdotal evidence. I'd hope he'd provide some kind of deeper insight, but I guess that's what passes for quality on the Times these days.
tristan_juricek··on Converting an existing Backbone.js project to Require.js
The RequireJS plugin system is really useful.

Alex Sexton's handlebars plugin is a great example of what sets this apart: https://github.com/SlexAxton/require-handlebars-plugin

- The javaScript code only sees the compiled template function

- Handlebars partials and helpers are automatically discovered and registered as needed

- The optimizer can be used to precompile all template code, makes for fast page loads

I've been using this with an i18n solution that folds in the MessageFormat.js project as well, which makes for a nice pluralization system even if you don't need true localization.

tristan_juricek··on Standups are Poisonous
Right, the group I'm in often will have "coordinating members" join as well, from designers, QA, the PM, even the VP will stop by to see whats going on, and sometimes we get 10-15 people. The only times it takes more than 10 minutes are when there are tons of announcements being made.

Most folks just state what they're doing today, and announce significant deliveries. But not everyone has the instinct to keep it short, especially when asked questions.

Doing this takes some minor training. Someone does need to be active in "gently reminding" people to move the debate/discussion somewhere. (This usually takes the form of, "maybe you should meet at X to hash that out in 15".) Whenever there are new people, you have to get them comfortable asking "I'd like to talk to you about XYZ after the standup". A lot of folks are rather timid at first, and often need to get used to it.

tristan_juricek··on The power of the RSS reader
Right, the problem is just that "unread counts" aren't that nice of a feature for RSS feeds, because not all posts are created equal. (Hell, it's not even that nice of a feature on email, unless you do a lot of filtering.)

I like the volume slider ideal; I that you could leverage social media outlets as a scoring system. (I'd include HN in that - the more points, the higher the score.) That could give you a nice way to "bump up" the things past some "volume" you haven't seen in priority.

I don't like the idea of "just don't subscribe"; why can't the tool figure this out for me?

Edit: "aren't nice" -> "aren't that nice". I do think counts are useful, just far, far from perfect. What I find myself dong is finding a feed with unread items, skimming, then marking all as read. (Well, when I use Reader, sigh.)

tristan_juricek··on My Very Own Protocol Droid
What's interesting to me here is that I don't see anything but the "Android" brand being mentioned. Several people on this thread mention having several Android phones, but not several "Samsung" phones, for example. This, despite the fact that Samsung seems like the only manufacturer "killing it" with the Android OS.

http://www.asymco.com/2012/05/03/the-phone-market-in-2012-a-...

This seems like a Google win and a Samsung loss.

tristan_juricek··on Open and Shut
TL;DR Gruber says "open vs closed" isn't really useful for determining commercial success.

I agree, however, Gruber's writing doesn't make it really obvious that he's slamming someone for confusing making money vs, say adoption of a technology. In fact, if you read both articles, neither author has a clear concept of "open vs closed".

The fact that high-tech systems eventually have to somehow integrate with other high-tech systems is always glossed over. This "ecosystem" like behavior is what separates high tech from, say, steel (an example used by Wu). You build steel for a bridge, your customer buys that steel, they probably don't think, "well, in 10 years, if you go out of business, where am I going to get some more steel?"

tristan_juricek··on How We Treat Pets in America
Right: we "rescued" a lab who has been great, but had a lot of anxiety built up over being simply being left alone. People coming by the door eventually led to him destroying the front entryway.

The result: we started anxiety training, which has been effective. And a lot of work. Plus, not all dog trainers do this sort of thing, so it's a little pricier than most dog training. And, we as owners also needed some education on how to work with the dog. Considering that both me and my girlfriend grew up with animals (my dad is a vet, we always had animals), I would consider this point important; anxiety cases are not easy and not obvious for most pet owners to just figure out.

While puppies do require attention, they are a lot easier to learn to handle than an anxiety case. Anyone adopting an adult pet should be aware of the potential training costs, with medication, can extend well above $1000 USD. (And if the dog decides to destroy your furniture, well, there's that, too.)

I know I will think twice before adopting an adult dog in the future.

tristan_juricek··on Why doesn’t anybody copy Apple?
It seems like this "diametric incompatability" could be a good subject for case study blog articles.

Off the top of my head is the shifting of "sponsored links" to take over the initial position in some Google search results. It seems like you'd have a lot more examples of "where these companies get derailed". I know I'd find value in that. :)

tristan_juricek··on I'm not too happy about Sublime Text 3
Has anyone actually encountered an issue with version 2 that would really piss them off that it's not fixed? I rarely encounter problems, and when I do, a quick restart get's everything back to normal. I find myself doing this far less than with other systems (vim, TextMate). Maybe I'm just not a massive plugin user.

My sense is that this writer is just really picky, and somehow equates constant updates with quality.

tristan_juricek··on Go as an alternative to Node.js for Very Fast Servers
I tend to think of "coolness" as a kind of reason behind early adoption, more like "this thing as a large opportunity for catching on".

I'm not 100% sure would make the argument that "Rob Pike and Ken Thompson made it". Instead, I'd say "it's in use at Google, and all of these other startups..." If 1 or 2 of those startups hit it big (e.g. Twitter or LinkedIn kind of big) that might have a bit more of an "Ooo" factor.

Though I have said, "it's incredibly well thought out, look, Rob Pike and Ken Thompson know what they're doing". I don't sense this quite had the gravitas I was looking for yet. Hm.

tristan_juricek··on No more remote work at Yahoo
My sense is that Yahoo is about to start doing some reorganization.

- There might be some trial and error runs of different managers (ergo, a period of quick reorganization) - Leadership might want to simply make their mark on the organization - It might be about establishing a culture of secrecy a la Apple (this is a stretch)

I do sense it's a symptom of a serious cultural problem. Layoffs might be coming. However, I'd expect more people to just to be straight up fired, without the big "we're reducing headcount" sort of announcement.

tristan_juricek··on Go as an alternative to Node.js for Very Fast Servers
Right.

I get more of the sense that Google is more "impressive" than "cool".

If I were to use "Google's got it in production" I might be told something like "well they can pull this off" as if they have some unattainable smarts or something.

Whereas a "cool" thing is more about just simply taking a risk.

Come to think of it, that's kind of a funny definition. Oh well.

tristan_juricek··on Go as an alternative to Node.js for Very Fast Servers
Yes, but at what point does go transition from obscurity to PG's "python paradox"?

http://www.paulgraham.com/pypar.html

It sure seems Scala's in this "python paradox" land now. My guess is that you need some startups make it big using Go to evangelize it. Google using it is interesting, but I'm not sure it makes it "cool".

Though, I'm not sure Java was ever a language you could use as a skillset filter. Hm.

tristan_juricek··on Dropbox is not a tool for developers
Using syncing as a developer makes sense to me because syncing or backup is not versioning.

Versioning (using git) is about marking state at a period of time. Such that, in the future, you can go back to that important state, and that state means something.

Backup, syncing, they just solve different problems. They might have backups, but those backups rarely mean something. Other than, "well I thought it worked tuesday".

I see this is as "different by design". I want Dropbox to make the same shit show up everywhere. I want git to manage versions and streams of work, often coordinating with other people. Using the dropbox workflow with other people sucks if people make changes (I have to often ask, "hey wait, what did you do".) Using the git workflow to sync with other devices sucks because I have to remember to tell it what to do.

tristan_juricek··on Debug Mode is the Only Mode
A practical step might be for tool-authors to always ensure their tools are obviously customizable for a variety of initialization needs.

Very few IDEs have made it easy to distribute and maintain custom components. Companies that I've seen have custom Eclipse plugins end up having a specialist, which means that the tool itself is too complex for the typical user to maintain.

Editors, on the other hand, are typically easier to distribute since you have mostly scripts. But since most places I know of avoid forcing the same editor on everyone, and the scripts are editor-specific, this is usually something a company is afraid of.

Few tools I've seen have examples of customization for anything beyond "launch a script". I'd like to see something like "here's how you would manage several background processes during your editor session". Customization needs to be brought into the realm of things typical users should do, not something they merely can, if they think about it.

tristan_juricek··on Apple has lost their legal claim to the iPhone name in Mexico
Something tells me, that even with a loss in court, it was worth having a few years of iPhone sales as the "iPhone".

It'll probably eventually be called the "Apple Phone"; but people will still call it iPhone.

tristan_juricek··on Jon Stewart: Lower entrepreneurial risk
Better social nets probably would create much higher wages as employees think "screw this I'm gonna at least try it on my own", so companies have to up the ante.

But I don't see more entrepreneurs turning into economic growth. That takes a specific, rare entrepreneur that focuses on building growth, rather than replacing a paycheck.

On the flip side, I don't see less taxes becoming economic growth either. Taxes have to be pretty damn high to change your operations. The amounts usually talked about are not going to cause a company to say "hey let's build a new product".

The question should be "what's preventing companies from growing" instead of this class warfare framework. In the US, I see big companies being limited from growth by their own C-level executives' eye on their stock take - which makes no sense until you realize the amount of money they can gain from short term manipulation. But I see more of a problem due to bad skill sets - too many people have the wrong set of skills. A retail store clerk is not going to help anyone grow these days.

tristan_juricek··on Open webOS 1.0 is here
Yes. It seems like you could reuse a lot of work from your web application with something like WebOS.

("It seems" == totally unfounded guesswork).

iOS development seems like more of a temporary stopgap to the eventual rise a great standardized mobile web platform. Well, temporary meaning "probably 4-5 years or so".

tristan_juricek··on Embark Plans 1.3M Transit Trips Since Apple’s Release Of iOS 6
Yeah, I do believe this is one of those cases that might be hard to do right and keep the UI simple, to implement easily.

That won't stop me from requesting it. :)

Good luck!

tristan_juricek··on Embark Plans 1.3M Transit Trips Since Apple’s Release Of iOS 6
Are there any thoughts for including bike routes or that ilk?

I live in the east bay (Berkeley, CA), and when I go to San Francisco, I often want to see what it might be to take BART + finish on a bike. This is opposed to finding a place to park. Just knowing what "bike routes" or bike lanes near to my stations is usually helpful.

This is also because BART + bike is usually a nice time vesus BART + Muni.

tristan_juricek··on A conjecture about code reviews
My main observation from managing a small group was that you could easily correlate the developer's skill to the feedback they gave in code review. The ones that illuminated possible bugs or ambiguities clearly stood apart from those that merely pointed out formatting inconsistencies. And by far the worst devs in the group were the guys who said "looks good".

I love the group therapy metaphor. Good regular communication about what we do, properly curated, really improves self-confidence.

Page 1 of 3Next →