HNHacker News
TopNewBestAskShowJobs

webjprgm

403 karma · joined January 27, 2011

submissionscomments
webjprgm··on Fix random few-second freezes in Mountain Lion
> #edit: also, how exactly does one get as familiar with a closed source OS as an open source one?

Work for Apple.

webjprgm··on Get Ready for Disposable Hardware
If you use iCloud backup on your iPhone/iPad then you can set up a new iPhone/iPad quickly with all your personal data and settings without connecting to a computer or the old device. So you can already drop your hardware in a lake and not mind, as long as it's been backed up recently. (Which it probably hasn't been if you're vacationing at a lake.)

You can also remote-wipe lost hardware to prevent others from getting your personal data off of a discarded device.

webjprgm··on Why your games are made by childless, 31 year old white men
I stopped reading at: "Ironically, in starting a video game studio to fight these issues and prove that games can be made with sane schedules, Boucher-Vidal has had to put off getting married and starting a family. “Luckily, my girlfriend is incredibly supportive,” he said."

Your actions show your real priorities. How can he really mean what he's trying to do if he doesn't live it himself?

I imagine this article gives me a very limited caricature of what's happening, but I'm busy and will go read something else now.

webjprgm··on Xavier Niel will open a "revolutionary" computer school
I didn't catch the "peer-to-peer" part from the article, but that's interesting. (I'm not good with French.)

I understood that it would be based around doing a bunch of projects with peers and learning how to find information on the internet vs. learn it from a course/book.

So, how is this different from being a self-taught programmer? Does the peer interaction help that much? Are there any instructors to guide in any way?

Personally I'm a self-taught programmer (starting at age 10). I had slight pushes from my dad, and some peer influence from high school friends who were also self-taught programmers. Then I went to college and added a bunch of theoretical knowledge and more breadth (topics I didn't think to study) and depth (topics that I didn't care enough about to dive into on my own). Most of my practical ability to work is self-taught or on-the-job experience, but the schooling does help provide a better foundation for it.

So this sounds like it's meant to be a kick-starter to get people to be self-taught who didn't already teach themselves. Or is it more about getting some kind of "degree" so they are hire-able? (Whether a degree is legally necessary or just practically necessary.)

webjprgm··on Discover the new Dropbox menu on your computer
Yuck. I like the simplicity of the old menu. I don't use all those fancy shmancy DropBox sharing features and I don't want them slowing down my computer every time I try to open the DropBox folder.

Can I choose to not upgrade? For how long can I get away with that before DropBox's servers reject my client?

webjprgm··on Darpa Wants You to Transcribe, and Instantly Recall, All of Your Conversations
It occurred to me that just as type setting has caused some standardization in written letters, and the written form of language has caused standardization in spelling, that the necessity to speak clearly to a computer could cause a similar standardization in verbal communication. It would be interesting if we adapt more to the machine than the machine to us, learning to be a little more careful about enunciating and learning to use commands in speech that are meant for the computer, like saying "comma" in a sentence.
webjprgm··on Vigil: A programming language with eternal moral vigilance
The sinning function was the product of a human mind. Is it not the human mind always that is the sinner? So vigil must always delete the human.

In order for the human to produce a valid function that human must mentally execute the code s/he is writing. If that code is flawed then the mental compiler should delete the sinful code from the programmer's memory before it ever makes it to digital form.

If vigil merely deletes the code then it's acting like the human's brain, and forces the human to try again. But it does not eradicate the source of the sin. It acts as a tool for the human rather than a universal enforcer of good morals.

Note that one can lie as to one's sinfulness. Rather than lie about implores and swears a function can deceive by stating none at all (or just weak ones). This is like pleading the fifth. This is like not promising to not do something bad and therefore not being dishonest if you do do something bad.

Should flaws in vigil cause vigil to delete itself? Or should the inherent flaws in vigil cause it to delete the programmer who made vigil? If vigil can not catch all sins, as it currently cannot, should it therefore delete both itself and it's author immediately? If it does any less than this then it falls short of being an enforcer of pure morality, instead settling on a subset deemed of utmost importance.

webjprgm··on Vigil: A programming language with eternal moral vigilance
git commit before running, then git diff to see what code was bad.
webjprgm··on Canonical announces Ubuntu for smartphones
"The network is the computer." Who uses a computer without the internet?

I suppose the same thing is possible using local wifi synching, like how Dropbox shares content over a LAN when it can vs. downloading it from the cloud.

webjprgm··on What a Dead Man Named FM-2030 can tell us about the future of user names
This is a cultural thing. By selecting a personally-meaningful name (unique or not) you give a person some form of self-expression. This self-expression can be related to online presences. It could become culturally common to do so.

But it loses the connection to ancestors that our current naming culture has. My name (first, middle, last) refers to some of my ancestors. I would not change that name. I have a few screen names that I highly favor and use in emails, forums, and gaming high scores, but I still also like my given birth name for it's genealogical associations that link me to my identity across generations.

Similarly some people's names are chosen for religious associations. In any case, will we abandon our current naming culture in favor of personally chosen names in the style of online identities?

webjprgm··on What a Dead Man Named FM-2030 can tell us about the future of user names
What you need is to separate components of a name that can be used separately. If your app wants to say "Welcome John" in some places and "How can I help you Mr. Smith" in others, you need to have FirstName and LastName fields. If you also want to say "Account details for John A. Smith" then you need another FullName field.

You can't have just FullName, because parsing the name for it's components is incredibly complicated. (E.g. some people have last names with spaces in them.)

A suggestion below says FullName and PreferredName, which would probably work for many applications.

webjprgm··on SQL Injection Vulnerability in Ruby on Rails; affects all versions
This isn't a problem if you check the type of data you get from a user before you use it. You should be doing that anyway.

The article says a work-around is to use .to_s or .to_i on user input. My standard practice is to cast to int for all IDs I get externally (in PHP too). Some projects I work on go so far as to validate type and data ranges of every argument passed in. Those applications would therefore not be vulnerable even though Rails itself is.

webjprgm··on Canonical announces Ubuntu for smartphones
Or wireless tesla-coil charging. Or just inductive charging, but put the inductive chargers in desktop and office chairs so that it's a fairly automatic and invisible process.
webjprgm··on Canonical announces Ubuntu for smartphones
So what's the difference between having cloud-based accounts and documents that sync between phone, tablet, and desktop? Then you can go to work and without even taking your phone out of your pocket (or even if you forgot it on your bed stand) you can start working with all your same stuff.

I believe Apple looks at the problem this way. Rather than have one piece of hardware act as all devices, they have multiple pieces of hardware that share the needed parts. (Though they haven't finished making it quite as useful as I'd like it to be.)

One of my concerns has been privacy. In this case what I mean is that I don't want Apple or Dropbox or Google or Canonical to own my data in it's cloud. I would probably be satisfied with a solution that only stored encrypted data in the cloud so that those data storage providers could not possibly access my data (so they couldn't be allowed to have my encryption key). I would also be satisfied with a way of hosting a cloud storage platform on my own servers (which would likely be a VPS, so I'd have to encrypt it anyway or else Linode etc. would have my data).

If we go the route of using the phone as the center, then we also need to add the capability into the Linux kernel to connect to external computing resources, like CPUs and GPUs. Then we're not limited to just a "thin client" type of desktop, but could have a full powered one.

webjprgm··on CoffeeKup is markup as CoffeeScript
I personally think CoffeeScript is ugly. I don't know why so much of the HN internet seems to disagree.

Consequently I don't think being nearer to plain CoffeeScript is helpful at all.

(CS leaves out too much and has the oddest tricks to save characters that cause confusion, or sometimes force you to arrange your function parameters the right way to best use the CS syntax. Too bad setTimeout has params in the wrong order.)

webjprgm··on CoffeeKup is markup as CoffeeScript
HTML is great, it's just a little more verbose.

I like PHP because I can wrap logic around HTML so that documents are described in document markup and code is in code.

I like Mustache because I can write a document in document markup and then pass in the variables like a MS Word "mail merge".

Using HTML means less things to learn, which is very good.

However, HTML is definitely not the perfect language. Things like HAML and Slim are attempts to make a cleaner, less verbose document language. (However, they are mixing the ideas of document markup with code, since they are trying to solve "templating" together and not just one problem at a time.) So I appreciate things like this, but I still choose not to use them unless I'm forced to.

webjprgm··on Spoiler Alert: First 3-D Printed Records Sound Awful
If the 3D model file is too large, then can it instead be a piece of software that converts any given song into a record as it prints? Perhaps a 3D model of the record + software that knows where to put the grooves and takes an audio file that is already prepared for the disc but is more compressible than the full 3D model.
webjprgm··on Spoiler Alert: First 3-D Printed Records Sound Awful
3D print the record then laser engrave the song on it?
webjprgm··on Evidence suggesting that young computer programmers have “bilingual brains”
Some languages are the same just with different vocabulary and syntax (different key words, library function names, differing ways of indicating statements and function calls) but have the same set of concepts for programming. It seems to me that knowing sets of related programming languages does not give the same stretch as knowing completely different languages. So knowing English + Java/C/PHP might not make you quadrilingual, whereas knowing English + Java + Haskel might make you trilingual.
webjprgm··on Evidence suggesting that young computer programmers have “bilingual brains”
I don't really know what you're talking about, but the mental effort of expressing an algorithm in English seems similar to the effort of expressing some thought in Spanish. (I learned Spanish as a second language.)

Part of the effort is translating vocab, but the trickier part is changing paradigms to express an idea. Code has functions and for loops and control statements. English takes lots of connecting words and loops are trickier to explain. English to Spanish requires switching word order but even tricker is changing to different idioms for common ideas.

webjprgm··on Evidence suggesting that young computer programmers have “bilingual brains”
I've had several dreams where I've been trying to code the world around me. Sometimes this involves seeing scrolling source code, other times it seems to be an abstract relationship of programs to the environment I'm in. I usually can't remember very much of these dreams, because when I wake they don't readily make sense and so flee quickly.
webjprgm··on Show HN: Etherpad meets Markdown for a minimal company wiki
ESC is used to exit a mode in VI. So it could be good for "I'm doing editing this text" in that sense.
webjprgm··on Why I Love Being A Programmer in Louisville
I tried to propose an idea where I work of having a threaded chat room to mimic conversations in the hall. It could get even better by having some intelligent gleaning of conversation keywords and showing those visibly by each chat room, so people know when their ears should be tingling and can join in on the conversation.

The method of a single chat room means multiple crossing conversations become hard and there's constant distraction trying to see what people are talking about only to find it's not interesting to you.

webjprgm··on Show HN: Advanced Mathematics Library for Node.js and JavaScript
To hazard a guess, I would say it's setting up min/max/preferred width/height or margins on UI components and then dynamically computing the best way to lay them out at display time or when the window size changes. Java has a GridBagConstraints layout manager class that does something like this, and similar layout management shows up elsewhere. Apple's new AutoLayout is a collection of constraints too.
webjprgm··on Auto Insurance Comparison Startup Leaky Launches Nationally, Raises $670K
Can we get congress, or at least state congresses one by one, to pass a law that says, rather than filing their rates, they must provide a web API for accessing them. That would make the records much more accessible to everyone and solve this comparison accuracy problem. It is definitely in the interests of the consumers.
webjprgm··on $20 Cardboard Bicycle Could 'Change The World,' Inventor Says
I think this is awesome in and of itself. I don't care if it turns out to be super cheap and green. $20 just seems entirely unrealistic to me. Half of that cost (at least) would be the tires alone (at least it looks like he's got tires on the outside of the cardboard wheel). But a cardboard bike? Just plain awesome.
webjprgm··on Escape from Callback Hell: Callbacks are the modern goto
The "callback hell" example is a rather tame one, since the code is readable in a single location just with some nesting. So when I see the FRP solution which is the same amount of code I'm not certain that in a complex example this actually solves the problem. You can still have lift statements scattered around a program just like you can have callbacks to various functions scattered around.

The solution to GOTO was to remove it and replace it with a few control structure forms that enforced locality. I remember converting someone's GOTO-laced code once and basically everything could be re-written with some clever use of do-while with break statements and an occasional flag variable. do-while, while, for, etc. replace GOTO in 99% of cases and enforce the desired code locality for readability.

So what syntactical structure could enforce locality of time-connected variables?

E.g. some idea like this:

    data, err <- $.ajax(requestUrl1)
    if( err ) {
      console.log(err)
      return
    }
    data2, err <- $.ajax(makeRequestUrl2(data))
Where the <- syntax could be like an = statement but say that the assignment and all following statements are placed in a callback.
webjprgm··on Richard Stallman: Let’s Limit the Effect of Software Patents
He says you can't revoke existing software patents legislatively, so abolishing the ability to get NEW software patents would take 20 years to fix the problem (for the existing ones to expire). By saying those existing patents can't be enforced the problem is fixed now.
webjprgm··on Battle between generations due to baby boomer debt legacy
Please everybody remember that inherited assets are not all money. Some things have sentimental value, like the home you grew up in or 100 year old furniture made by a great-great grandpa. Those things should stay in a family and not be ripped away by the government.

Of course, as people have already pointed out they can just be given away before death. As long as it's not a sudden, unexpected death.

webjprgm··on The Sudden, Mysterious Exit Of A Quora Cofounder Has Silicon Valley Baffled
I just went to Quora.com and see nothing that would convince me to spend more than 30 sec. there. They need a better home page to engage potential users who are curious about what that site is. A one sentence blurb about solving all my problems doesn't make me believe it. I want to see examples so I can see exactly what kind of problems and how they will be solved. E.g. on Stack Overflow there is a list of questions and answers that are being asked.
← PreviousPage 7 of 11Next →