skysight-inc/HackerNews huggingface dataset:
Writing code after 20 years – my own phonegap experience
I'm 46 years old. I was trained as a software developer in the late 80's, graduating in 1992. I learned Pascal, C, C++, Lisp, Scheme and Smalltalk. My favorite language was Lisp. I was hired as a programmer for my first job but within 6 months I became a product manager. I never had to write code again for my job.

Fast-forward almost 20 years later, I decided I wanted to build my own mobile app and experience with the whole App Store economy. To do that, I learned Javascript, JQuery, HTML5 and CSS3 to build a phonegap app.

I studied with http://www.w3schools.com until I felt confident enough to go ahead and build my very first mobile app. My training took a full-time month for these 3 languages.

I used the http://www.telerik.com platform as my coding environment. That saved me hours.

It was actually much easier than I thought. Coding is like cycling, you never really forget it as long as you were taught algorithmic properly (which I was).

I would have never succeeded without the fantastic StackOverflow community though - it seemed like every time I was hitting a dead end, someone had been through the same problem and the answer was always here for me to find.

My only struggle was to not know that SQL calls from Javascript were asynchronous. It took me a good 2 days to figure this out. I had completely forgotten the concept of asynchronous functions so I was not even looking in that direction. Everything else was really easy.

My app has been on the app store for about 6 months. If you are curious and play poker it's here: http://www.pokerbankrollapp.com/ I used Javascript, JQuery, TinySQL and PHP for some back-end processing.

I just wanted to share my little experience and I wonder if other people have ever done the same thing?
I suggest that the gp's post is very much an ad hominem attack. It suggests, but does not offer proof that Magical Tux is an inferior programmer not capable of building quality software by playing on the fact that some people consider PHP a toy, broken and inferior programming language. It asserts that PHP programmers are always inferior programmers - an assertion that does not hold true. So it uses an unrelated info-bit (PHP-Programmer) to attack Magical Tux qualities as programmer of a bitcoin exchange.

Please note that I'm not asserting anything about the qualities of the programmers of MtGox or the code quality running the exchange. It might quite well be shitty and bug-ridden, but that quality is totally unrelated to PHP.
This ability is simultaneously one of the most amazing and frustrating things about Google search.
HTTP/1.1 418 I'm a Teapot (RFC 2324)
Cordova is the future and the future belongs to those who prepare for it today.

Learn Cordova.
On Facebook, I remember a time when the native app was horrible on Android.

In many ways it still is - it requires too many permissions and the list is growing. Recently they're asking for access to my SMS messages and in Android 4.3 I had a bug with my Nexus 4 in regards to location services as the Wifi-network provider was draining my battery and so I had to disable it, so Facebook's app was still requiring it, activating the GPS on each opening of the app and there was no way to turn that off, unless I turned the GPS off globally. Granted this is also a failure of Android's permissions system, but ...

The mobile web interface was and is still there. It doesn't matter if the mobile platform is new or old, it doesn't matter if Facebook's app was developed (and approved) for that platform, the web interface is there and it works, the only requirement being for the user to have a decent JS-enabled browser.

People view Facebook's investment in their mobile web interface as a failure. I view it as competitive advantage.
Sorry but I _need_ those new instructions.
I prefer native system packages to tarballs, so here's a script [1] to generate .deb and .rpm packages using Jordan Sissel's FPM [2] (gem install fpm).

[1] https://gist.github.com/rasschaert/8915657

[2] https://github.com/jordansissel/fpm
Learn to write clearly. Learn to read code that you haven't written.

Peter Norvig's essay "Teach Yourself Programming in Ten Years" is worth a look: http://norvig.com/21-days.html
While in general I indeed think that people should profile code before they optimize it, I also think that they should avoid unnecessarily pessimising it by writing code that is not exactly idiomatic and is known to have an overhead.

In this particular case I am not sure I would prefer slicing+forEach to writing a old-style for-loop on any relatively hot path. Of course either profiling or thorough knowledge of the code should be applied before making this decision to determine whether this code path is hot or not, what's the average size of the array and so on. The main motivation for this decision would be the fact that slice produces the copy of the array. This is both hindrance in terms of performance (as VMs right now would not elide copy operation) and in terms of readability (e.g. when I see such code I would have to ask myself: does doOtherFunction require fresh copy or not, does it use only the first argument or all of what forEach passes into it and so on?).

So you can see the choice for me is pretty complicated.
I like Wordpress. I make a post and is published to the web that all i need. Thank you.
Define you working hours and find a place where you work from.
Programming explained to non-programmers: Children in the intensive care
Have you ruled out the various other ways that the phone could potentially turn your phone number into your name?
Git_pretty_accept: accept pull requests the pretty way
You could "learn cordova" but you'd have a massive gap in your skills. As the website says "Apache Cordova is a platform for building native mobile applications using HTML, CSS and JavaScript", i.e. you still need to lean HTML, CSS, Javascript and a backend technology.
SEO is fine. More info here http://www.metacotta.com/ghost-seo/
JavaScript frameworks are not easy to learn.

Just to add to what the other folks have said, if you are looking to rapidly prototype something with a backend, perhaps using Rails with all its gems will allow you to do so. You will have to eventually learn Ruby and Rails itself though, but I am sure there are a ton of "putting it together" tutorials out there.

Just plug in the multiple pieces and you're good to go.
> the majority of people I know [..] seem to find it hilarious that everybody knew he was a blatant pedophile

I'm not sure hilarious is the correct emotional response here.
What was his marketing experiment?
I think he meant there is nothing good about complexity and bringing down the whole system on a crash.
For the Linux kernel this is probably an unfortunate necessity, for an init system it is not.
When the viral bubble bursts, will it take out BuzzFeed?
Another huge piece of news from this article:

- "The [SHENANIGANS] operation – previously undisclosed – utilizes a pod on aircraft that vacuums up massive amounts of data from any wireless routers, computers, smart phones or other electronic devices that are within range."

- "The operator describes how, from almost four miles in the air, he searched for communications devices"

- "VICTORYDANCE, he adds, “mapped the Wi-Fi fingerprint of nearly every major town in Yemen.”

This is something we didn't even know is possible: drones are cataloguing the MAC addresses, BSSIDs, ESSIDs (unique identifiers for things like your iPhone and the wireless adapter on your PC, laptop, or tablet) of people's personal electronics, at the scale of cities, from so high up in the air you can't even see the drone, and they're creating "fingerprints" from it. That means what devices "belong" in what city.

They don't suspect these people of any wrongdoing or criminal activity - how could they? They're monitoring entire cities. This is exactly what Snowden warned us about: the untargeted mass surveillance of entire populations.

The next time you hear about domestic drones for police and "homeland security," remember this article.

[The Day We Fight Back rally](http://www.thedaywefightback.org) is tomorrow.
Frankly, this is only possible by web apps not being web apps.

I'm not sure I agree with that, though it might never happen because the owners of the major platforms have absolutely no interest in being turned into a dumb foundation by the web (or a badly debugged set of device drivers, as Andreesen put it in 1995). The reasons for the ascendance of mobile are political and corporate though, not technical. There's little reason webkit performance cannot approach that of native, particularly if it used something like nacl rather than js, and no reason APIs cannot be exposed to web apps too (Apple exposes quite a few).

Web apps are currently superior in: deployment,future-proofing, IMO discoverability, platform independence, and most importantly cost

Native apps are currently superior in: performance, accessible APIs, 3D

Their relative strengths will change over time, but note that performance is not usually an insurmountable obstacle, while some of those areas where the web has strengths are inimical to the way Google, Apple, MS or Amazon want to do business - for corporations to tie in their customer as tightly as possible to their ecosystem and tightly control what is available to them (as Apple have for example banned kindle selling on their platform) is the best possible outcome. App stores are broken by design, just as the MS desktop monopoly was, and I don't think they will be able to surmount those problems, because they are fundamentally user-hostile. Why can't I buy kindle books on my ipad? Because Apple wants to make money from that transaction.

The web has other problems, among them a worse is better approach in many areas, but I think it's ultimately going to prevail over other solutions bound to a specific hardware/software stack.
10 Exercises That Will Get You Ripped
Just curious, what do you use a 12 000 x 12 000 canvas for ?
Just remember where the bread is buttered, pedestrians = homeless panhandler but car = customer.

I'm not sure if you're trolling or just a bit tone-deaf, but this is an incredibly US-centric way to see things. Seriously, it makes you seem a bit clueless.

Clearly, the mindset you voice here is something that city planners in the US need to take into account. The question is, where does this difference come from, and can something be done about it? After all, cars and all the infrastructure surrounding them take up an enormous amount of space, which seems wasteful in the design of efficient and compact cities. How can those inner cities be "revived" in a way that makes them livable?
http://www.youtube.com/watch?v=NITBfc1EOBo
For all practical purposes it's unique. Otherwise, Bitcoin is broken and useless.
Just another variant on the classic advice that the best place to be in a gold rush is to be the person selling the shovels.

I wouldn't waste my time building my own clone, because aside from being completely unfulfilling, it's also likely to make no money for me by the time I get it done. But I'd happily charge my standard consulting rate to build one for somebody else, and let them eat the probable loss.
Perhaps the problem is that the new paradigm is not so clearly superior to the old one. GUIs have huge advantages over text based computers for productivity. Does touch actually have that many advantages over a mouse and keyboard for someone sitting at a desk? I'd probably choose a touchscreen over a laptop touchpad, but I'd definitely choose a mouse over a touchscreen for most of the actual work I do.
First off, congrats to you for success. I certainly agree that it's very possible to break into this space at pretty much any stage in your life. However, I think you have the cause and effect of attitudes toward non-children backwards. There is, unfortunately in my opinion, a lot of cultural pressure to develop artificial specializations early. This helps create the "I'm not an X person" mentality which in turn creates a chilling effect toward anyone trying to pass on a passion for technology. The belief in technology as unfathomable magics extends even into other scientific fields among people who are very intelligent (at least in my experience). It tends to be easier to convince a child this is not the case and efforts in technology education have followed the path of least resistance. I think there is huge room to grow in terms of expanding technology education, but I don't know how it's going to happen in an environment where "I'm not an X person" is an acceptable (even encouraged) mentality.
Great post is inspire me to right somthing like it.
NP. .05% of profits is all I ask.
"It's a protocol bug!" "It's not a protocol bug!" is sort of a moot point.

Bitcoin is a protocol in the sense that the IE6 rendering engine is a protocol: yes, rigorously examining what the client monoculture does and does not emit does allow you to describe some set-of-rules. Trying to create another Bitcoin client which attempts to agree with that set of rules is, ahem, fraught. You have to be bug-for-bug compatible with the Satoshi client implementation, not with the Satoshi client's declared behavior, design intent, or whatever constellation of PDFs and Wiki posts that the Bitcoin community anoints as "the protocol."
That news is covered here:

http://blogs.csoonline.com/other/2979/irc-network-calls-inve...
I think Virtualisation, Automation, and Orchestration technologies would be the best place to start again. I've seen some really impressive things done at pretty impressive scale with this stuff.
Youtube is down?
500 Internal Server Error<p>Sorry, something went wrong.<p>A team of highly trained monkeys has been dispatched to deal with this situation.
If you see them, show them this information:
AB38WEM5jSwr7aCrdfKGe0UUmsmpO3Nm-nehOfzU9S9fWSNkuifPOTB8lJd-
XZq-x7B6KLgH_40cIF8WTkTszI41x50QcQX9YKbMlTeoJHF-emv2fjGyAZ58
wIEeKcvggpc1I7BVY-9eZLi_e7Uj6meCaQVoUqv8ZYIgKMiYmlv3hmftlpEV
.............
Why do you assume it is not base64 encoded? I have always come to believe it is some encrypted data. If I was Google I would probably give every server a UUID and a symmetric key. If an error occurs encrypt (and authenticate) the stacktrace and other debug information with that symmetric key and prepend the UUID. As a developer you can then find out the server that produced the error message, log in via SSH and decrypt the debug information.

But it would be interesting to collect a lot of this error messages to check if they appear to be completely random.
Poll: Flappy Bird – Played or NOT
Let's see who missed out on Flappy Bird.
No, never installed
Installed but never played
A Good Developer is a Healthy Developer
The easiest language to learn is whichever has the best tools available to you to learn with.

If you're someone who can just read a book and go from there, try a few books and go with whatever one you like most. If you prefer learning by being taught, find courses need you and learn the language that they teach. If you want to learn online, go to Coursera or Treehouse and pick an option. And so on.

Don't choose an "easy" language and then struggle with the learning material - pick good learning materials first, learn how to write some simple code, and then use that knowledge to learn a more appropriate language for what you have in mind.
But both are distracting... Why are people so obsessed with getting directions by looking at a map WHILST DRIVING... I do occasionally use my phone as a navigator, but I only use the voice and listen to the commands, but I find it ridiculous how many people take their eyes off the road...

I don't understand why you'd want a touch screen for everything though - like I said, even for changing the temperature whilst driving seems impossible on a touchscreen device whilst driving...
German still has a dative case. We lost our dative case in England around the time Middle English developed.
Youtube is down for me :(
How does Ghost generate pages for web crawlers? This has always been my hesitation about this sort of platform. Does it pre-render static pages? Or is everything rendered on the server in NodeJS?
That actually strikes me as a more reasonable objection than many I've heard. On the other hand, systemd is actually in use in various places, so bugs are being looked for and found, so this process doesn't begin with Debian's adoption and you're back to balancing probababilities the same as you would with any change.
Future Cities. Collects data from the entire city (and its citizens).
There's a trick to this. When signing up on the promo rate, make sure to discuss any terms of extending the promo/getting it reissued. One of two things will happen.

A. they will say "that'll be easy, just ask before it runs out and we can fix it"
or
B. They will say "we can't do that"; in which case you ask if you can cancel and restart your service to re-get the special deals and they'll get confused, potentially ask a manager, and then say "I guess so." (they'll first make a huff about if your card appears in the system making you ineligable for the new deals, but you can fix this by either making enough of a huff, or using your spouses/your own alternate card, for example, I have a visa and a master card.)

In either case, when your deal is about to run out, call them up again, ask for the extension. There's a chance they may _just give it to you_ if the attendant is feeling very friendly, but usually you have to ask to get sent to customer retention (the magic words in all of this) and then tell retention EXACTLY WHAT YOU SAID INITIALLY WHEN YOU BOUGHT THE SERVICE THAT EXTENDING IT WAS POSSIBLE. I don't know whether it's verifiable, I just know that this pattern works, and I'd rather not be lying to them, so I always make sure to ask on the front end. Every time I've done this, in this manner (over the last.... 6-12 renewals?) I've gotten the initial price again, slight deviations from this script result only in a partial time extension/no extension at all.

Long story short version; you know comcast is terrible when you have enough experimental data to draw out some crude state diagrams of how to get around their terrible support.

(I also have decades of stories of getting charged for them to repair nonworking internet that was their own fault, lying about services I asked for, charging me for services I didn't sign up for, and taking up what is at this point probably man-weeks of my life just trying to resolve billing and service issues.)

Man. This did not set out to be such a rant, guess there was really some latent Comcast hatred in there...
> i still use IDEs for most of my coding so i dont have to think about configuring my editor all day.

If coding in a text editor causes you to think about configuring your text editor "all day", then you should definitely use an IDE. (Or see a therapist?)

I tweak my Emacs configuration about once per year.
Yes. Its down for me as well!

https://dl.dropboxusercontent.com/u/78317387/500_error_youtu...
Ask HN: Has Youtube been Hacked?
Book review: Mastering Perl 2nd edition
I have two words for this: cognitive overload!
My brain almost liquefied itself.
Announcing a big change: I’m going to Google.
I think they hoped we'd believe in the change we we noted it was stamped with the words "In God We Trust."
What a soundtrack! I stopped watching the video because of that
An analysis of this can be found here:
http://www.cambus.net/decoding-youtube-http-error-500-messag...
There's no need to be snide.

I think he may just be surprised that those bugs still occurred, given how the Rust toolchain is itself implemented in Rust, by the designers of Rust, and how Rust is supposedly designed in a way that prevents bugs to a larger extent than other languages do.

It's understandable where he's coming from. If those who know Rust the best are still subject to bugs in their Rust code, it's perfectly valid and reasonable to wonder if the rest of us really be any better off than we are with Java, or C#, or Python, or whatever language(s) we're currently using.
Wow, the decline of SourceForge is much harsher than I expected.

Where did all projects go? GitHub?
J2Global acquires UK based Livedrive
The main and most important use of transaction hashes in Bitcoin is to ensure that, when blocks are mined, the transactions contained within those blocks are locked in and any modification of those transactions can be detected and rejected. Transaction malleability is meant to change the hash of the transaction, because that ensures no-one can mutate transactions after they're in a block. If you really need to track transactions in the way MtGox is doing, you should construct your own transaction ID that hashes everything except the scriptSigs (which are malleable).
Love Wordpress - the fact that it's more than just a blog is why I use it. If I were to just blog nowadays, I'd prefer a static site generator using Markdown above everything else.
» “He’s Wearing a Diaper”: TSA Agent Humiliates Cancer Victim
They change completely on every load. Encoding would likely have similar sections between page refreshes, as it doesn't we can assume your theory of encrypted data is correct. It makes sense anyway, it means they can have a user supply a stack trace or similar without exposing any information to them.
Phaser, which uses the really awesome pixi.js rendering engine, can read in files from Tiled, the map editor, and Spine animations. No 3d really as such but pixi.js does have a webgl renderer that lets you add in glsl "filters" and has some built in.
Python - I believe it's the language of the now and the near future.
Crimsonland, one of my favourite games of all time, has exactly that as a special survival game mode.
From the older thread: http://www.reddit.com/r/Bitcoin/comments/1x93tf/some_irc_cha...
I use pycharm with typescript, and either I have a new version or the pycharm plugin is far different to the webstorm one. All the refactoring options, jump-to-symbol, type hinting, type completion and inline-error checking work really well for me.

There are some pain points to be sure (modules, generics that don't quite work), but:

- Emits known good javascript patterns, preventing javascript's typical '50 ways of doing something'.

- Interacts cleanly and nicely with the existing javascript ecosystem.

- The emitted javascript runs on old browsers, and is only marginally bigger than the source code, smaller sometimes, if you use interfaces

- Clean module system (a little irritating to use perhaps, but still) supporting AMD and CommonJS (this is absolutely the future for JS dependencies).

- Open source, installable compiler using npm.

What's the alternative?

- native JS <-- Not a bad choice, needs discipline to maintain code quality
- coffee script <-- Interacts poorly with existing js ecosystem
- dart <-- Doesn't run on old browsers, poor interop
- emscripten <-- Massive output, poor interop

I cant say I'm any hurry to add C# into the mix, but typescript has impressed me thus far, despite being from Microsoft.
First steps in using Magento – Across the Board
Well, you could take everything incredibly personally for no obvious reason, or you could consider that no one is actually saying you have to be a "hacker" so-called to participate in the industry.
Master C and C++. Both are still relevant today and most other languages are simply derivatives of it (which means you will pick them up easily).

Defining mastery is the tough part though... If you think of it the way I do, you will find a good career for the rest of your life, although I don't think coding for 40 years is a life well-lived (especially on 70-hour workweeks).
I'm getting the following message
"500 Internal Server Error

Sorry, something went wrong.

A team of highly trained monkeys has been dispatched to deal with this situation."
More likely it's because those jobs are submitted by a bunch of clueless wannabe tech millionaires who've never worked with a programmer in real life and have no clue about what is involved—all they know is it's a pretty simple game.
Wordpress is free. What's not to love?
Hacker or attempt to Hack, you may face 20 years in prison