HNHacker News
TopNewBestAskShowJobs

bsaunder

869 karma · joined February 25, 2007

@codeisdata on X recursivedesigns @ google's free mail service https://www.linkedin.com/pub/bruce-saunders/3/650/434
submissionscomments
bsaunder··on Graphs
...(an asymmetric relation) to things on the internet

You mean a link? ;)

With regards to your other points, I do think the general premise of the post is correct that the pendulum is swinging back (?) towards more flexible data structures (e.g. graphs).

The writing does come across as though the author just had an epiphany ... hey... these things are all graphs...

Yeah, and so are lots of other things.

bsaunder··on Programming for a culture approaching singularity
Useful automation is going to lead to more wealth, which mean more free time for other stuff.

Sure, I think this exactly describes our current situation. Ironically, that "more wealth" is very disproportionately distributed between the owner of the automation mechanism and the workers that have been automated away. Similarly the notion of "more free time" is equally disproportionate.

One better go get another job, one can sit back and enjoy life.

bsaunder··on Programming for a culture approaching singularity
What signs do you think you will see?

I think we are hitting a new reality where people are having a hard time adding value. Over time, I think computers and robots will be able to automate and out perform most human tasks.

Much effort is put on retraining people for new jobs. The problem is that there will come a point where no human will beat the automated systems and no amount of training will fix that. On the top end of the scale, we have brilliant people that are forced to accept low wage research jobs or jobs that have nothing to do with their specialty.

Have you seen the diapers.com automated warehouse video? How long do you think it will take before every non-unionized retail chain has automated the restocking of their stores. How many net jobs do you think that will create?

I'm not saying the "Singularity" is approaching. But I do wonder what the signs would be and if these are some of them.

bsaunder··on In praise of default
We’ve already printed money, the fifth option, and in my opinion may well print a whole lot more.

This is said so matter-of-fact yet not given much more weight in the argument presented for default. As I see it, default and inflation are the only two ways out of this (and I'm not sure they are binary and mutually exclusive). Both seems to penalize the affluent with assets and benefit those with debt.

Why people not talking more about inflating our way out of this? Wouldn't a devalued currency also increase jobs as things are brought back on-shore?

bsaunder··on Apple letter about iPhone 4
hmmm... looks like they are backing out the 2.1 OS fix that "Improved accuracy of the 3G signal strength display". That always seemed fishy to me.

http://gizmodo.com/5048905/iphone-21-update-available-now

Especially entertaining is the update note at the bottom:

The "3G signal strength display" fix certainly seems to have done something for my iPhone 3G: it's sitting here in the same place on my desk, and has gone from two bars of 3G signal with the 2.0.2 software to a whopping five bars in version 2.1.

bsaunder··on GraphLab: A New Framework for Parallel Machine Learning
Sure, or at least chat on IRC some evening.
bsaunder··on GraphLab: A New Framework for Parallel Machine Learning
You're welcome. I'm working on something similar as well. I haven't fully digested the paper yet, but it resonates very well with my current implementation.
bsaunder··on "Study Functional Programming or Be Ignorant"
Yes, perhaps "are intractable" was too strong of an assertion.

I think as we migrate our data towards more flexible structures and look more towards asynchronous parallel processing, we may find that splitting out data and behavior serves us better than tightly binding them as OO methodology does.

I think ultimately we will treat our code and data as the same thing, just from different perspectives and levels of abstraction. I'm not sure most OO programming environments today support this notion easily.

I do think we will be solving harder problems, but what exactly they are falls into my unknown unknowns category.

bsaunder··on "Study Functional Programming or Be Ignorant"
Well, the title's a bit of a tautology, but it does seem that a bit of the glow has worn off of Java (to those that were captivated by it in the first place anyway). Functional programming seems to be trending upwards too.

I agree with the general assertion that hard core OO developers (Java and .Net folks) will need to start learning some new mental models of programming to keep adding relevance. I think we will start solving some harder problems that are intractable with traditional OO mechanisms.

bsaunder··on An introduction to ZeroMQ
Some things in there seem to be contradictory. In particular, there's a claim about being brokerless:

ZeroMQ follows a brokerless design so that there is no single point of failure.

But then there's this: ZeroMQ greatly simplifies this pattern by allowing you to have a single socket connect to multiple end points.

How does that work? Seems like a cognitive disconnect to me. AFAIK, a single socket can only connect at exactly two end-points (one being a client, the other being a server). Right? Sounds like a broker would be connecting that one socket up to multiple end points...

Maybe there's no CENTRAL broker, but certainly (at least in some configurations and uses), it sounds like there's an intermediary process involved in the communication.

bsaunder··on Criminal Overengineering
hmm...

If I have to do something new with the list, I don't have to completely rewrite my program (like #1 does)

You said #1 only took 15 minutes. Hardly seems like a big cost. If you never have to rewrite, #1's the right answer. Or if the rewrite includes functionality never even anticipated in your "correct solution". If it's that small, starting over with a clean slate may be faster than fitting in new functionality.

bsaunder··on A 10-minute description of how Judy arrays work and why they are so fast
EDIT: Sorry, placed comment on wrong parent, should be on: http://news.ycombinator.com/item?id=1419647

In this post.

Additionally, some of Judy's space and speed improvements come from strategies that could be used by any data structure but aren't because they're not good software engineering.

Seemed like an odd statement. That's like saying "Assembly is obtuse and it's bad software engineering to use it." IMHO, it depends. If you are writing low-level code that will run very frequently, perhaps good engineering would suggest that you should optimize in assembler.

I think, there are places in your code where you need good runtime performance and spending programmer time and sacrificing generic dogma are justified.

Like the author says at the end. If some tool/library/service meets my needs (in this case robust and fast being among them), then I'm not too concerned about how it gets there:

Of course, you can certainly take the attitude that Judy performs well enough, and the fact that it's 20,000 lines of code doesn't really matter, as long as those lines of code work and you never have to look at them--and it appears Judy is mature enough that this is the case.

bsaunder··on Apple: Make a desktop, your iPad app is toast
It's beginning to seem like Apple is treating all their third party developers as employees that they don't have to directly compensate.
bsaunder··on Coroutines in C (Simon Tatham, 2000)
A related post:

http://nathanwiegand.com/wp/2010/04/lessons-i-should-have-le...

bsaunder··on Coroutines in C (Simon Tatham, 2000)
Fair point.

Getting to that "a ha!" moment when I figured out that this would help (a lot) was very hard. Forcing my code to behave that way was definitely non-intuitive and challenging. Having merely gotten it working and proving my theory (it works) that it's a huge efficiency gain, I now get another crack at the next version.

I don't think it's necessary for a compiler to do the work for you, or to have it built in as a fundamental feature of a language (that certainly helps). But I do agree that without a library or (dare I say) framework, it is a bit challenging to code from scratch.

Probably the hardest part (for me), is that it breaks so many fundamental notions of programming.

One obvious feature that I'm making heavy use of is that I can get data out of the state machine on every call (that's almost the whole point for me). I can use that data and determine if I want to call it any more or just kill it (or maybe put it aside to get called later).

Perhaps more interesting, I have the opportunity to pass data into the state machine on every call down to it (not just on the initial call). That seems powerful. I already have an idea on how to utilize that.

I do agree, that at some point this technique would be more efficient if implemented in assembly than in a high-level language. My approach is probably similar to implementing a binary search in a high-level language and comparing it so a linear search in C. At this point I'll take the flexibility of the high-level language. Almost certainly a lower level implementation of the same pattern would kick butt.

bsaunder··on Coroutines in C (Simon Tatham, 2000)
"This is very nice in theory, but in practice you can only do it in assembly language, because no commonly used high level language supports the coroutine call primitive."

I think you can get a similar effect in a high-level language by transforming the logic inside your normal function into a state machine that effectively runs one line logical line of code per call. You still end up with a call stack, but you don't use it the same way.

I'm currently implementing an approximate search engine this way in a high level language. I've done some proof-of-concepts with this technique and it seems very efficient, because I can just kill the machines without having to run them to completion when I think I've found my answer (or am sure there's no answer to find).

bsaunder··on Microsoft patent trolls Salesforce
I don't believe there exists a technology company in the world that doesn't infringe on patents (mostly unintentionally). I think if most of them really looked they'd find thousands patents they are infringing.
bsaunder··on The havoc the XML purists wrought
It may matter a lot for some data... When you send a binary file, would you like all of the zeros stripped? Your insignificant data from one perspective is possiblely significant from another perspective.
bsaunder··on The havoc the XML purists wrought
I've become a JSON and YAML fan as I think they have higher signal to noise ratios (they each have their own issues with white space though).

  JSON:
  {"a":{"b":"hi"}}

  YAML:
  ---
  a:
    b: hi
bsaunder··on Say What You Mean (in JavaScript)
I think sometimes what's "readable" to one person isn't to another. The more you hit a coding convention, the more readable it becomes (as with anything). So noted. Move along. There are bigger fish to fry.
bsaunder··on IPhone hacker demonstrates how to bypass the iPhone passcode
Having problems viewing this (video blocked at work and won't play on IPhone). Could someone please summarize?
bsaunder··on Blocking I/O: it's not just for pansies
This post is over 2 years old. Seems likely that the world has changed at least a bit since posted (slow things tend to get optimized).
bsaunder··on Very cool uses of HTML5 Canvas. Love Torus "Cylindrical Tetris"
To all those job hunting... instead of a resume, write something like this.
bsaunder··on Steve Jobs Has Just Gone Mad
Gee, I thought they meant "originally" as in:

"My code was originally written in C, but I've now ported it to Clojure." ;)

Of course as I make changes, it produces C that compiles to normal .o files that are then (without any further translation, compatibility layer, or tool required) linked with the Documented APIs.

bsaunder··on Why Many Smart Folks End up going Nowhere
Sounds like Ashburn. ;)
bsaunder··on The National Broadband Plan
When you take a technology and unregulate it and let the market operate, you'll get way better results than when you lock a technology up in the hands of one owner.

That about sums up my view on patents as well.

bsaunder··on The New Digital Underclass
"Academic research in these areas is almost redundant by the time it is published given the pace of technological change ... "

This seems indicative of the rapidly increasing rate of technological change. I think we are just starting to see the effects of millions of independent blogs and the rapid, community bubbling up, of posts with interesting insight.

For me, it's hard to ignore the premise of the singularity proponents.

bsaunder··on Here's how you really use your iPhone
I'll buy it for my kids. They would get much better mileage out of it than I will.
bsaunder··on Anti-IRS Rant of Software Engineer who Today Flew Plane into IRS Building
And if had my servers hosted there, I might consider moving them.
bsaunder··on How a job is created
That's it, bring back manufacturing by creating higher quality products than the Chinese. Surely most of those jobs would be higher level support to robotic assembly lines. But the Chinese have set a wonderfully low bar for quality. Furthermore higher quality products are "green".

I'm fed up with purchasing crappy products. I want a store that charges 50% more but guarantees purchases for life (kind of an anti-walmart (except for the profit part ;)).

← PreviousPage 4 of 11Next →