HNHacker News
TopNewBestAskShowJobs

wylee

172 karma · joined March 22, 2011

submissionscomments
wylee··on But Where Do People Work in This Office?
I think it's more accurate to say that it's because open office are cheap (*up front). It's pretty clear that they reduce efficiency in many, if not most, cases, which can be very expensive.
wylee··on An Offer to Sony from 2600
What about burning just those pages of the Bible that condone slavery?
wylee··on How to write a developer resume that will get you hired
> 1 When in doubt, wear a suit

As general advice, this is wrong. There are a lot of positions where wearing a suit to the interview would automatically mean you won't get hired.

Of course, it depends on the locale, the position, &c, but the idea that a suit is always safe is somewhat outdated.

wylee··on President Obama Calls for a Free and Open Internet
I'm not a huge fan of Obama, but do you really think the surveillance state was created during his presidency? This type of thing has been going on... well, probably forever. It's gotten more sophisticated in the Internet age, but that started before Obama too.
wylee··on Why Email and Cars are heading down the same road
The notion that we don't "pay atrociously high fees" to own and operate cars is a pet peeve of mine. People look at bus fare, for example, and think it's a lot, but compared to the actual cost per mile of driving (payments, insurance, fuel, maintenance, &c), it's often cheaper, even for short trips.

And this doesn't even get into the costs of pollution (including noise pollution), deaths, injuries, and poor health associated with sedentary lifestyles.

wylee··on “Did you mean?” Experience in Ruby
I used Eclispe/Aptana/PyDev at a previous job and it was pretty nice, but PyCharm is superior in my opinion. In addition to great completion and code navigation, it also gets Vim emulation mostly right. PyCharm is also a mostly out-of-the-box experience, whereas it took a while for me to get Eclipse set up just right.
wylee··on This Is Your Brain on Silence
I use this sox command:

    #!/bin/bash
    play -q -c 2 -n synth brownnoise band -n 1600 1500 tremolo .1 30
You can adjust the frequency and other parameters to suit your environment. Adding tremolo makes it sound a bit like ocean waves.
wylee··on Option and Null in Dynamic Languages
That version (and the one in the article) are somewhat confusing to parse and detract from the point of the article.

This seems more "Pythonic":

    def lookup(d, key):
        return Just(d[key]) if key in d else None

    def values_in(keys, d):
        values = []
        for k in keys:
            x = lookup(d, k)
            if x:
                values.append(x.value)
        return values
If you really want a one-liner, I think this is easier to understand:

    def values_in(keys, d):
        return [x.value for x in (lookup(d, k) for k in keys) if x]
wylee··on Python 3.3.5 has been released
I think it's pretty safe to go with Python 3 for new and/or personal projects. I started moving all my stuff to Python 3 a few months ago and Fabric is the only major project I use that hasn't been ported.
wylee··on Plan 9 released under GPLv2
How does the GPL prevent this?
wylee··on CSS source map support, network performance analysis and more in Firefox DevTools
It's pretty much the same as Chrome. One thing I see in Firefox that I don't in Chrome, though, is the "edit and resend" feature, which lets you edit a request and resend it. It's pretty cool.
wylee··on CSS source map support, network performance analysis and more in Firefox DevTools
I'm glad they're adding a call stack. I thought I just couldn't find it. Other than that, I think the current version already works really well. When this new version comes out, I don't think the competition will have any major advantages.
wylee··on CSS source map support, network performance analysis and more in Firefox DevTools

  - open dev tools
  - click on Network tab (far right)
  - make a request (e.g., reload current page)
  - click on one of the entries in the list
  - there's now a tab for cookies on the right
wylee··on hr for your terminal
I just stuck this in my PS1:

    hr() {
        printf '=%.0s' $(seq $((${COLUMNS} - 20)))
    }

    PS1="${GREY}\d ${RED}\$(hr)${GREY} \t"
It dynamically adjusts to the width of the terminal, and looks like this:

    Mon Feb 10 ======================================== 16:30:30
My complete BASH prompt: https://bitbucket.org/wyatt/dotfiles/src/25cb260a05b68dd81a5...
wylee··on Big changes to Erlang
In Python, I would use `prod_db` as a dictionary key and not a name that looks like a class name. That said, I do agree that some very common abbreviations are okay in some contexts.
wylee··on Obama’s Path From Critic to Overseer of Spying
When I was born, on the day of my birth, how much personal responsibility did I have for the state of the USA and the world in general? (None)

When did I start to have the even the most basic understanding of what's really going on in the world?

At what point did I become culpable?

At that point, what power did I have to actually influence anything (given 400+ years of policy, expansion, entrenchment, racism, etc).

I agree to an extent that individuals can and should take some personal responsibility, but that doesn't address systemic effects. And the mere notion that we should take some responsibility doesn't lead to an effective course of action.

Suggesting that we vote (which someone else suggested).. well, that's almost comical given the premise of the thread, which is that you can't trust politicians, no matter how progressive or sincere they might seem.

As much as I do take responsibility (and feel guilty about not doing more), I still haven't figured out how to have any real influence.

I've spent plenty of time complaining about other people and their lack of participation too, and I'm not sure what difference that has made. Merely pointing out the problem (or what I perceive the problem to be) doesn't change anything by itself.

Edit: Added a word. Formatting.

wylee··on Taking PHP Seriously
The GIL and a JIT are low level implementation issues though, right? E.g., Python 3 can be implemented in PyPy (and it looks like that's in the works).

Most of the Python 3 changes are design and feature related, and it's a lot more than just "UTF-8 and a few tricks".

For example, Python 3.4 is adding asyncio (http://www.python.org/dev/peps/pep-3156/).

And if you look at the _What's New In Python 3.x pages_, there's a ton of new stuff.

edit: forgot a word

wylee··on Taking PHP Seriously
I think Python 3 offers more than you think it does. I'm not going to try to convince you, but having used it steadily for the last month or so, I really think it does.
wylee··on Death To The Open Offices Floor Plan
Also, wrt. headphones, in addition to potential hearing loss, it's painful to wear them all day long, they don't block out all sound, and a lot of people don't respect the headphone rule.

That said, when I'm in the type of environment where I need to wear headphones, I think brown noise (e.g., from sox) is a nice alternative to music, and white or pink noise behind music helps create a consistent sound screen.

Here's my brown noise script for sox (it's supposed to sound a little like waves):

    #!/bin/bash
    play -q -c 2 -n synth brownnoise band -n 1600 1500 tremolo .1 30
wylee··on Death To The Open Offices Floor Plan
At a previous job in an open office plan, I had set myself up in a corner, trying to create a sense of space and maybe get marginally more privacy than the spots in the middle of the room.

One day I came in and a new person (non developer) had set up shop directly behind me in the same corner (about 4 feet away). It was so jarring and distracting--I couldn't get anything done all day. I eventually had to move to a different corner.

I also hate being seated in a restaurant with my back to the room. It makes me so uncomfortable. So maybe I'm just more sensitive to this sort of thing in general.

wylee··on Object oriented programming with ANSI-C (1993)
To just get the hang of OOP, you might be better off starting with Python or Ruby (or some other language with a REPL). Although you can do OOP style programming in C (and it's a fun exercise), there's a lot of low level stuff that's really interesting but not particularly relevant to the basic concepts of OOP.

If the choice is between just Java and C++, I'd go with Java, but it probably depends on what your long term goals are.

In any case, learning any language can't hurt, so I don't think there's any danger of making the wrong choice--unless you get so stuck that you're not making any progress. Just pick whatever "fits your brain" then branch out later.

wylee··on ATF uses rogue tactics in storefront stings across nation
A question (maybe a nitpick) about the word "liberal"--wouldn't it be more "liberal" to be against gun control since less control means more liberty?
wylee··on A Soft Murmur – Ambient sounds to wash away distraction
I love this site, especially how it goes into some depth explaining the different sounds. I had no trouble with it on my S3 in Chrome.
wylee··on Where Working-Age Americans Are Moving
It seems to me that one of Boulder's big advantages/draws is that it's a college town close to a big city (Denver). There's no arrangement quite like that in Oregon. Bend is hours away from Eugene or Portland.

Having lived in Eugene for a while, I'd say it's pretty nice, but you might get bored pretty quickly, even as a runner. It's just to small (for me).

I think Portland is better for outdoorsy stuff in general. There's Forest Park, Mt Tabor, etc in the city and lots of camping, hiking, snowboarding nearby.

wylee··on What’s New In Python 3.4
Or bpython.
wylee··on Combinator Recipes for Working With Objects in JavaScript
The `maybe` in the article allows for this ambiguous situation:

    var fn = function (a, b) { ... };
    var maybe_fn = maybe(fn);
    var obj = {};
    maybe_fn(1);  // calls fn
    maybe_fn(1, null);  // doesn't call fn
    maybe_fn(1, obj.nonexistent_prop);  // also doesn't call fn
In my mind, all of these calls to `maybe_fn` should do the same thing. Maybe not, though?
wylee··on Combinator Recipes for Working With Objects in JavaScript
In `maybe`, would it make sense to check the args passed to the wrapper against the number of args the original function expects? Something like this:

    function maybe (fn) {
      var expected_number_of_args = fn.length;
      return function () {
        var i, arg;
        for (i = 0; i < expected_number_of_args; ++i) {
          arg = arguments[i];
          if (arg === null || typeof arg === 'undefined') {
            return null;
          }
        }
        return fn.apply(this, arguments)
      }
    }
wylee··on Living in the zone
I use multiple Firefox profiles to help with this: personal, work stuff (non-dev), API docs, and dev. I have different add-ons for each--e.g., NoScript in the personal profile and Firebug in the dev profile.

I'm never tempted to open Reddit/HN/email/etc in my work-related profiles because I hate the idea of polluting my browser history.

The other key to this, for me, is virtual desktops that roughly correspond to the FF profiles. There's at least a little effort involved in switching desktops, but sometimes I need to shut down the personal FF instance, too.

← PreviousPage 2 of 2