Work for Apple.
403 karma · joined January 27, 2011
Work for Apple.
You can also remote-wipe lost hardware to prevent others from getting your personal data off of a discarded device.
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.
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.)
Can I choose to not upgrade? For how long can I get away with that before DropBox's servers reject my client?
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.
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.
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?
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.
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.
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.
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.)
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.
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.
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.
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.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.