skysight-inc/HackerNews huggingface dataset:
So it was Tandy Color Computer 3 (CoCo 3). Thanks royjacobs.

Wikipedia has one more interesting detail about CoCo 3:

http://en.wikipedia.org/wiki/TRS-80_Color_Computer#Color_Com...

"Previous versions of the CoCo ROM had been licensed from Microsoft, but by this time Microsoft was not interested in extending the code further.[citation needed] Instead, Microware provided extensions to Extended Color BASIC to support the new display modes. In order to not violate the spirit of the licensing agreement between Microsoft and Tandy, Microsoft's unmodified BASIC software was loaded in the CoCo 3's ROM. Upon startup, the ROM is copied to RAM and then patched by Microware's code."
Hi Arian,

First of all, congrats for being open about your addiction :)

We all have this problem on one level or another. I find myself doing this plenty at night, but used to do this a lot during the day.

It took me over a year to realise that it was not in fact HN that I was addicted to but rather the need to escape the life that I had at the time. Things were difficult between me and my team with my last business and it was really hard to stay motivated. So I'd spend hours a day on HN trying to escape my then reality.

It might be possible that you're experiencing something similar.

Just a suggestion.

Hope you figure it out.

Regards
> For example, do devs sandbag their time estimates so they only get 2 tasks instead of 3 tasks?

There are mechanisms like planning poker that help to prevent this. They still aren't perfect.

> And what happened when you needed 50 tasks done, but the time estimates from your team, combined with the cap of 48 hours per week, fell short of 50 tasks?

Most methodologies should see this coming except in minor cases. You generally have better foresight over longer projects. This can allow for some correction. Sometimes you just asked too much. Consequences are context dependent.
That's either backwards or just wrong. Perhaps you're confusing this with the syntax for existentials in data-declarations? I'm really not sure.

'forall x. A x. x' is a type of polymorphic values. Given such a value, I can instantiate the type-variable to any instance of the type class A. For instance, given

x :: Num a => a

I can write

y :: Float
y = x

z :: Integer
z = x

Now if 'class A x => B x', then B is a subclass of A. In that case, in the type 'forall x. B x => x', the type variable x is more restricted. For instance, if I substitute "Integral" for "Num" in the type declaration for x, my code breaks. How's that for LSP?

x :: forall a. Integral a => a

Now I can no longer instantiate the a to Float:

y :: Float
y = x

So I can do stuff with 'forall a. Num a' which I cannot do with 'forall a. Integral a', even though Integral is a subclass of Num.

More generally, you cannot coerce a value of type 'forall x. B x => x' to one of type 'forall x. A x => x', because that would allow the type variable to range outside B. Consider:

x :: forall x. Real x
x = 0.5

coerce :: (forall x. Real x) -> (forall x. Num x)

n :: forall x. Num x
n = coerce x

m :: Integer
m = n

This is type-correct, but semantically invalid, since the m has lost precision from x.

If you want to talk about contravariance, you can note that when you add a type-class constraint of the form A x => x, you've basically got an implication, and the "A x" is in contravariant position. That's why your example is, if anything, the wrong way around.

What you can do with existential types in Haskell is kind of like subtyping. At least, it's kind of like what you do in the C++ example with abstract types. But that's because abstract types are kind of like existential types. Full class hierarchies can then be mocked with Haskell type classes, existential quantifiers and explicit coercion functions, but that's because subclassing is kind of like containment which is kind of like implication which is kind of like the type of a coercion function. But by this stage, we've got a long way off from saying that type-class hierarchies in Haskell are subtype hierarchies, as you originally suggested. They're certainly not in Haskell 98, and with existential types, they don't give you the implicit upcasting that comes from values having multiple types. Even with existential types, all values have exactly one type, and this is crucial to remember when trying to reason about Haskell's type system. In other words, forget about subtypes!
The abstract says that "a practical general-purpose protocol for verifiable computation may be significantly closer to reality than previously realized". This should be interesting though, thanks for sharing!
it's so refreshing to see a company rising from somewhere else than the western world. Somehow it's almost too bad they chose the google style for their office it's not exotic enough for my westerner's eyes.

I'm a fanboy: since 2005, I have made all my employer buy some of their products, and when I have no employer, I buy some myself. (on a side note, I didn't know they where in Russia, I always assumed they were based in Central Europe)
Too bad you can't put a rainbow on it.
My knowledge on cryptography is next to nothing. Would you mind explaining to me what makes the case for secure messaging different than any other transfer through a secured HTTP connection? I also read a bit on OTR Messaging and the "Socialist Millionaires' Protocol" but just got even more confused.
While I think it's a great time to see JavaScript actually come to the forefront of software development. I've been a pretty big fan of the language for a long time. Well before Crockford's good parts book. And well before modern browsers. I remember the v4 browser days, and how painful DOM interaction was.

I've been pushing for node.js and MongoDB for over three years now, and finally seeing them gain a lot of traction. Right now I'm pulling for docker.io and CoreOS to gain the same kinds of traction (and learning go).

I don't think what the author is asking for is impossible.. but I would be more interested in either stronger core development skills or stronger design skills, you won't likely get both. I started off doing more design and that was over a decade and a half ago. Today, I reach for balsamiq if I want to mock something up, and tend to go very basic and neutral for UI to start with. You can add more later, especially if you have an artist at your disposal.. Beyond this, clean design is finally gaining ground anyhow, though I am getting tired of very bootstrap like sites.

I've seen the good and bad, to very bad.. you deal with the issues you have come across personally, and likely won't know how to fix a specific issue you haven't come across... today, I'd say a JavaScript developer should know at least one test framework, and one module framework. Should at least understand closures, and some of the ES5 extensions (especially to arrays), understand how currying techniques work... and experience with node.js and mongodb is really important.

Knowing another server-side framework is important, but dogma from a various server-side frameworks tend to cloud how development works in the JS mindset... There's a lot of changes happening in the past 2-3 years (a lot driven by node.js), and more to come... just being open minded and trying to understand some functional concepts is important a well.

Personally, I'm tired of some of the recruiter emails that I get.. generally a few a day, and mostly either distant locations I have little interest in and/or for salaries I wouldn't consider.
Hmm

"The 6809E was featured in the TRS-80 Color Computer (CoCo), the Acorn System 2, 3 and 4 computers (as an optional alternative to their standard 6502), the Fujitsu FM-7, the Welsh-made Dragon 32/64 home computers,"

I know and have/had almost all of them. Maybe more popular in Europe?
royjacobs recognized that first here in his comment to forktheif's top: it was Tandy Color Computer 3. The article author answered that question in the comments.
Should be used in cars.
Norway Rejects Bitcoin As Currency; Taxes As Asset, Instead
The term you are thinking of is orthogonal.
What evidence have you given that you understand these "better algorithms?" You haven't even described them, let alone named them. Merely alluded to them like a religious believer invoking handwavey ideas of first cause. I don't think you are in a position to criticize "depth of thought."

Moore's law is a statement about transistor density. It does not apply to algorithmic/mathematical innovation, otherwise we'd have sentient robot buddies already. Do you find the algorithms and languages of today exponentially superior to those of 50 years ago? May I remind you LISP came about in 1958...
Why? For CoffeeScript you already need to know and understand how JavaScript work.

And for a experienced JS programmer, it will be very easy to code in CoffeeScript.
Hi Joshua, thanks so much for your comment.

I like the idea of bite-size deliverables and I make sure to try and communicate to the point of almost over communication.
And it goes beyond being drunk: sometimes I code when I'm tired but can't sleep. I have a vcs to ensure I don't trash something irretrievably; also tests and ideally a decent type system to increase the chances my code does what it should.
Mac https://itunes.apple.com/us/app/messenger-for-telegram/id747...

Win https://tdesktop.com
their love affair with the current administration has basically neutered them.
Hi Chris,

Thanks so much for sharing, this is really great stuff. I like the idea of not getting caught up in email too soon in the day :-)
"How is Telegram different from WhatsApp? Unlike WhatsApp, Telegram is cloud-based"

Yeah, ok. Decided not to use it right there.
I think you're close.

The only PC of the future I can see is what would be considered an embedded system of some description at the moment; not a re-purposed one but one that is designed to be used for something else.

I don't see ARM or Intel getting a look in here as they are not open architectures. ARM is almost always in a notoriously unknown licensing status from experience.

I reckon that the market will divide into consumption, some open architecture that doesn't exist yet (for power users, enthusiasts running Linux) and this sector which is hacking devices.

The PC of the future doesn't exist. Yet.
The common denominator of all that is wrong with development today is the internet. Work on a library, thick client, compiler, or anything like that and you are fine, but work too close to any of the tiers in some kind of internet/web based application and your day is filled with misery.

Hopefully this internet thing will just fade away soon and we can all go back to real development.
It seems that you don't have an interesting project in your daily work and you "procrastinate" by trying to find something interesting and useful on HN or similar. While this is at least not wasted time (as opposed to wasting the same amounts of time on social networks and or image/gif sites).

My advice would be to start or join a larger project that you are interested in (something open source may be).

Note that I assume, you don't have a day job and thus you have larger portions of spare time. If you do have one and you find yourself being stuck on HN or similar, then it seems you are bored of your job. Talk to the responsible and find something new you can work on.

Either way, this will give you new perspective and you will find yourself occupied with something you like working on, ultimately leading to spending more time on things you consider productive.

The many tools that are proposed here are definitely useful, but in the end if you have a lot of free time, you'll always find a way to "procrastinate".

cheers and hopefully you figure it out soon :)
Solo founders routinely wear both of those hats and then some.
Stock Footage Video | Video Backgrounds library
This was an oooold SunOS compiler that didn't warn about much other than you owe Sun more cash.

Also when you're drunk, the warnings result in "ahh who cares" :)
You are correct to be wary. However, the MTProto java impl is here:
https://github.com/ex3ndr/telegram-mt
Thanks so much for commenting 6-5 would be too long for me but kudos that you can do it! :-D
Point Cloud Library - a large scale, open project for point cloud processing
StackExchange Winter Bash 2013
Thankfully many/most of us don't have to worry about IE6-7, and IE8 is falling off (mostly)... the app I currently work on is only IE9+ and modern browsers. I feel that IE9 is really the only legacy browser with significant market share.. once that's passed, it will be better for all involved.

I've been dealing with browser quirks since the mid 90's... there's never been a better time to be a web developer. That said the browser tech alone has exploded with CORS, Web Sockets and WebRTC ... that's not counting the ground gained with node.js, mongodb and others...

The landscape is rapidly changing, so who knows what the near, and the next couple of years will bring to the table. Golang, docker.io and coreos are other things to keep an eye on.
It works because then it gives people an excuse to leave work lol!
Hiding around the corner just might be something strange and exotic enough for you :-) http://blog.jetbrains.com/blog/2013/06/04/jetbrains-hackatho...
Haha!

In seriousness, some tips that I find help:

* Learn & use Bootstrap. A manager actually told me to use Bootstrap instead of a custom webapp design created by his in-house designer once. The defaults are fine for a surprisingly wide range of projects.

* Learn some design basics, like the rule of thirds, typography and picking palettes from colour wheels.

* Don't be afraid to copy other people's designs. Conversely, if you're copying whatever is in fashion right now (I'm looking at you, long, scrolling pages split into sections of type/images...), then you might be better off just using Bootstrap.

Finally...

* Hire a designer.
Check yourself, tech. Let's pop the bubble of tone-deaf arrogance
Yeah this point needs to be stressed. CS is just javascript. You're not suppose to use CS unless you know JS well. Enough said.
I think he means "Personal Computer" and it could be a Tandy or a Dragon, both Motorola 6809 based.
Thanks so much for commenting - I think you are right, it should be goal based, but the reason I have mentioned times in the article is because it is hard to say to a family member - oh I can do that after I finish x, when they have no idea what x is or how long it could take.
I spent four years in (2 years longer than the OP), but worked on a substantially broader swath of intelligence areas and in much more policy-oriented positions, and I can tell you that the vitriol that's been displayed on HackerNews is incredibly tiresome to see, because you are all missing a very key point about how the NSA conducts business (which I've pointed out in previous posts).

The key point is this: the NSA does not create policy for its operations. Those are written into law through executive, legislative, and judicial processes, and the three should theoretically balance each other out, which the public currently deems as not doing a sufficient job of balancing. The NSA acts as an instrument -- the employees (to include the director) are directed through a system of reporting and feedback, and determine how best to act in order to obtain more positive feedback from customers of the reports.

This isn't some theoretical system I'm talking about -- it's a database of reporting with attached feedback. The feedback shows who consumed the report, whether or not the party found it useful, any enclosed comments about the report, and how high up the report went. If my report made it into the president's daily brief and more information about the reporting subject is desired, that will show up in the feedback, and thus I have my "direction".

How does this translate into real world operations? Here is a theoretical conversation between Mr. Policy and Mr. NSA:

-----------------------------------

Mr. NSA: Here is some information I found about country X, which might indicate that they're conducting operation Y.

Mr. Policy: I would like to learn more about operation Y, and country X's intentions to expand it.

Mr. NSA: I don't currently have the capability to expound upon operation Y, unless you grant me the authority to access datastore Z.

Mr. Policy: We took a vote, and you have access to datastore Z on a thirty day trial basis, but then must shut down operations if nothing of value is found.

Mr. NSA: Here is the information you requested about operation Y and country X's intentions.

Mr. Policy: This information was not useful in directing policy, therefore datastore Z is to no longer be accessed.

-----------------------------------

From this, I think you can extrapolate my point. Do you blame the scalpel for being too sharp, or the surgeon for handling it incorrectly?
If you order dates within the same year, mm/dd makes more sense than dd/mm. That can be a reason for the American date format. In any case, yyyy/mm/dd makes the most sense.
Not that it ever worked properly. For me it was randomly dropping messages.
One week of Yahoo Mail outrage and restoration
I dont understand those job ads. What kind of person honestly describes themselves as such? Maybe I am just too jaded, but god damn, note to self: kill myself if I ever use one of those titles.
"Cloud based" eh? Very secure.
Thanks for taking time out to comment on this, it is very much appreciated!

I love the idea of making yourself available for 9-5 team mates but not sticking rigidly to their structure.
That Chapel looks cool :-D
An appeal for security for the ordinary developer
and apps on iOS and Android - no possible way data could leak there.
There is nothing incorrect or dubious in C about an expression like if (foo = bar), so it wasn't considered a reason to warn the user about for a long time, despite being a rather common culprit for bugs. Compilers popping up warnings about that is a fairly recent event.
Here's a review of GWAN:

http://devopstom.com/blogish/gwan-snakeoil-beware/

Not very positive.

Previous discussion on HN:

https://news.ycombinator.com/item?id=4109698

Contains this little comment by me:

https://news.ycombinator.com/item?id=4109804

> From the site (which seems to disallow copy-paste):

>> The next time someone feels the need to publicly call G-WAN's (1-page) license "weird" or "insane", look at what they sell and who they get their revenues from. Unlike for G-WAN, what they offer is not free for all.

> They have redefined the word 'free' into a fine mist if they expect you to believe Apache and nginx are not free. They're doing something I've seen done before; oddly, it was mainly being done by Usenet trolls.
Interesting. Some observations:

TextSecure has been a work in progress for two years: https://github.com/WhisperSystems/TextSecure/commits/master?...

Telegram seems to have been in progress for two months: https://github.com/ex3ndr/telegram-mt/commits/master?page=2

Telegram also seems to be the work of a single author. While TextSecure was written mostly by Moxie, there were several other contributing members.
Does anyone know why JetBrains, which seems to very much be a Russian company, has their head office in Prague?
...I actually wonder why they don't just pretend cell phones don't exist.

Because it feels forced. Ghosts and zombies are the premise of the stories, a thought experiment around which the plot unfolds. Pretending cellphones just don't exist feels like a contrived fix to the writer's inability to write a good plot. It's equivalent to a deus ex machina. Unless, of course, you can write a plot that hinges on the lack of cellphones - that could be interesting.
I guess, that the problem is in encryption key exchange. Cloud chats are easy to synchronize between devices. Secret chats require unique encryption key for each chat.
To bad there's no iOS app.
The problem with Peercoin is that it is centralized by the reliance on checkpoints. That makes it completely missing the point - after all you can have a centralized crypto-coin without mining at all. I am still waiting for a true decentralized proof of stake coin.
Is it just me, or does the article and about 90% of the comments seem like extreme navel gazing? You could paraphrase most of them simply as "Look at me, I'm a JS badass/ninja/guru/rockstar and in very high demand -- but I'm not full of myself, honest!".
>Q: How secure is Telegram?
>Very secure. [...]

It's just an advertisement like any other. I'm sure the people responsible for the content of the FAQ know their target audience, so they know the wording will work for those whose attention they care about.

It is good that we, technical people, understand how completely worthless those words are. It begs for the "citation needed" label.

The question for me is this: do ordinary people (non-programmers in this case) really believe in most of the things ads tell them?
> I always assumed they were based in Central Europe

they have headquarters in Prague
The only thing which begets action, is action.
Sounds similar to the scrolling 'hack' John Carmack used on Commander Keen.
I mostly come to HN these days to participate in the community discussion. That doesn't really work when you're replying to week-old comments. :)
Talent.

By being in certain countries you exclude certain talent because of discriminatory laws.

Russia for instance can forget about any talent that might be part of or supportive of LGBT.
Not sure if Prague is better though, but at this moment most countries are better than 'state sponsored' national socialist attacks.
At least on this ancient version of gcc restrict helps even with the fixed sized array argument.

Without it the code of sum_of_squares_1 is as following:

400913: f3 0f 11 07 movss %xmm0,(%rdi)
400917: f3 0f 10 48 34 movss 0x34(%rax),%xmm1
40091c: f3 0f 59 c9 mulss %xmm1,%xmm1
400920: f3 0f 58 c8 addss %xmm0,%xmm1
400924: f3 0f 11 0f movss %xmm1,(%rdi)
400928: f3 0f 10 40 38 movss 0x38(%rax),%xmm0
40092d: f3 0f 59 c0 mulss %xmm0,%xmm0
400931: f3 0f 58 c1 addss %xmm1,%xmm0
400935: f3 0f 11 07 movss %xmm0,(%rdi)
400939: f3 0f 10 48 3c movss 0x3c(%rax),%xmm1

As you can see it stores the dst[y] on each iteration. With function definition of:
void sum_of_squares_1(float dst[restrict ROWS], float src[restrict ROWS][COLS])
The disassembly becomes completely different. However the speed of the end result did not really change that much.

Could you throw objdump -d of the best icc output to pastebin? I'm interested to see what kind of code it produces.