HNHacker News
TopNewBestAskShowJobs

just2n

1,208 karma · joined September 13, 2012

submissionscomments
just2n··on Spritz – read 500 words per minute without any training
http://jsfiddle.net/vKZLn/1/

Fun to make. I'm also curious about the overall benefits. I find myself distracted by other thoughts if I don't have subvocalization happening.

If you want the ability to move backwards, I feel like that's possible with a good NLP library. If you skip back two sentences, or enough sentences to match some word or syllable threshold, it may be useful. In that case, you can play a few words, pause for a second or so to let the user decide if they've found the right spot (and context switch into reading) or if they should continue going back. I tried hacking in a quick back button that went back X words, but it was very disorienting. But in any case, it isn't as interaction free as doing so when reading a block of text is. But to counter your argument: you still have to keep your position even with text or seek for your position again, so there's a downside to those benefits.

I'm not sure how Spritz handles things like this, but I felt like making my own based on what I saw on the demo really quick to get a better understanding. It's a curious thing, maybe I'll check out the application sometime.

just2n··on College considers basing president’s salary off that of cleaning staff
Putting aside the fact that the budget for that particular small public state funded University didn't require more than the public funding and tuition, that premise seems odd.

If the justification for someone's salary is "they make us that much money", then why would the University refuse to compensate an IT worker who demonstrably saved the school $50,000+ a year by having extraordinary skills for their position?

Or why can't there be Alumni relations staff that only exist to cater to Alumni and extract as many donations as possible? Why does it make sense that the President would do that?

Does Obama, to make a stretch comparison, raise all democratic party donations himself? It seems a silly thought. And if he did, would it justify giving him a salary of some outrageous number, just so long as we point out that he raises more money than he costs? Say, $20,000,000/yr salary and he brings in $90,000,000?

I'm all for profit sharing, but that brings up an even bigger question: why is there only a single person in the University being given the option of profit sharing? In a place where raises didn't happen for nigh on 10 years straight and bonuses were unheard of, if you could generate more value for the University than your cost, in multiplicity, you should see part of it. It's not OK to do that for the independently wealthy white man running the University with a base salary of $300,000, allowances upwards of $250,000 and a paid-for home while keeping the guy making $40,000/yr who just kept you from needing to buy $100,000 in software and consulting from seeing a single additional penny. It's completely unfair and there isn't any valid justification I can imagine would ever be presented to explain it.

just2n··on College considers basing president’s salary off that of cleaning staff
For a small arm of a large federated public University?

The vast majority of income to the University was from public funding, tuition, and sales on campus. He was never involved in working with state legislation to try to get us more funding -- that happened at a higher level in the University system. The large independent contributions happen regardless, and had mostly happened before his time (you know, buying a new building for the University and having it named after you).

The President was so far divorced from students that almost nobody could actually recognize him. He wasn't the reason anyone attended the school. Every alum I know has never heard of him outside of public speaking engagements. Every faculty member and staff member on campus I talked to (and I worked there for 3 years, it was a small University) had almost 0 interaction with him.

How is he fundraising, and who is he selling what to?

I saw absolutely 0 justification that he was earning the salary of 1 sanitary worker, let alone 5x the highest amount they paid any skilled worker on campus.

just2n··on College considers basing president’s salary off that of cleaning staff
Or perhaps the average salary of non-administrative and non-exec workers.

And 10x seems like an arbitrary (and large) multiplier. What justifies it? What does the president of a University do that adds that much value to a University? I remember ours made over $300k and all he did was go to parties thrown by wealthy Alums, give public speeches, and otherwise be a politician at council meetings.

By comparison, entry level IT there was $30k, "programming" was $40-50k, and senior in either was capped at $55k essentially. And IIRC, the professor salaries were similarly pathetic. I never understood how a public University justifies paying an administrator (something like a glorified answering machine that can make Excel spreadsheets) double what it pays someone who builds and maintains the infrastructure the school needs to function. Especially when the latter often must wear 10+ hats and train themselves on their own time just so they can do the job adequately.

just2n··on Colorado Pot Tax Proving More Lucrative Than Expected
That's clearly what I have proposed. Let's ignore the decades of research that clearly indicates that smoke produced from burning any form of cigarette is carcinogenic and triggers allergy symptoms and complications caused by chronic illnesses like Athsma in others.

It takes a certain level of inconsideration to sit there and cause other people to breathe smoke. How much would it impact someone, say yourself, to kill someone by inducing an Athsma attack on your lunch break?

Further, it's already the case that laws exist to make certain behaviors illegal for the very reason that they inconvenience other people, not because they cause harm. That includes being excessively noisy and producing foul odors in some cases, among many other things.

What I've learned today is that there are a lot of inconsiderate assholes on Hacker News. Be it out of general apathy of others or just sheer stupidity. I'd have argued the latter could not have been the case many months ago, but given the recent discussions and new posters, it seems to be a contender. Perhaps then, it is vogue to "care about others" when it's convenient (for instance, when it makes you look good or benefits you), but otherwise fuck other people, because "what I want to do is more important than your entire life".

And here I thought this wasn't /., reddit, or 4chan. Wrong.

just2n··on Colorado Pot Tax Proving More Lucrative Than Expected
I wonder if there is any (increased) consideration for stronger laws against smoking in public areas. Particularly on high traffic sidewalks.

Cigarette smoke is bad enough (and should also be banned in such areas), but Marijuana smoke is far more pungent. It's bad enough we have to deal with exhaust from cars that are clearly illegal (emissions wise), why is it OK to spray toxic fumes all over a sidewalk with a smell that is aptly described as a public nuisance?

just2n··on Steam's VAC reads all the domains you visited
VAC has never been particularly effective. This check isn't particularly useful as it doesn't actually prove that a player is or has ever cheated. It's also trivial to bypass (`ipconfig /flushdns`) if you are an actual cheater who frequents these websites.

To be banned because you visited a website is also an abusable medium. Similar to the memory and window name scanning VAC and other similar anticheats have done in the past (or continue to do). You could historically get people banned by just doing stupid things, like having an IRC title that shows up in mIRC's window name that's detected or sending someone a message via any chatting medium that has a detected substring.

Imagine you just send a tinyurl link to your opponents in an upcoming tournament. Or just embed a simple <img> tag in an otherwise harmless webpage (display: none, for example) so everyone who visits your website has that domain fresh in their cache. This kind of "evidence" quickly becomes useless because it can be used for nefarious purposes, which is why it should never be used at all.

This is not only ineffective, it's dangerous. And it's an invasion of privacy since you can simply create a rainbow table of domain names, as other people have pointed out.

Come on, Valve.

just2n··on When Random Isn't Random Enough: Lessons from an Online Poker Exploit
That wouldn't be the result. The result is that the final card is swapped only once, and can never be swapped with itself, meaning it is always somewhere else in the deck. If the final card is the ace of spades, then the ace of spades can never be the last card in the shuffled deck.

In most casino card games, shuffles happen before this knowledge becomes particularly useful, which is why I don't think it's necessarily the major cause for concern here. Being able to easily guess the seed is, however, a pretty massive issue.

just2n··on When Random Isn't Random Enough: Lessons from an Online Poker Exploit
It seems to me that the only major issue here is using a seed which can be trivially brute forced. Even if you don't look around the expected server time in order to guess the seed more quickly, 32 bits is really not hard at all to brute force these days.

I don't believe the number of bits the PRNG can generate is an issue here since we only need to uniformly get a number between 1 and 52, though what may be questionable is the cycle length of the PRNG if it weren't using an easily brute forced seed.

I'm not entirely convinced the off-by-1 is substantial, nor the fact that the shuffle produces duplicate shuffles (I can't intuit a significant bias, so I may well be wrong here).

So to summarize: never seed a PRNG with a small and easily brute forced value.

just2n··on Chicago makes Computer Science a core subject
It's worth noting around 2009 that the harder Computer Science exam was no [longer being given by AP][wikipedia]. The course I had was AP Computer Science aimed at the AB test back in 2004-2005. It was in Java but every bit as rigorous as the one described by the grandparent's in C++.

Supposedly it was discontinued due to a lack of people taking it, but that was partly due to the fact that it's not a core subject and I assume because it was quite a bit more difficult than the others. I recall taking the Calculus AP BC exam as well and trivially scoring a 5 on it, while the Computer Science AB exam was actually fairly difficult, even though I spent a significant amount of time learning algorithms and data structures, implementing all of them myself, and reading lots of code. One point of anecdata, but in my experience someone who did score a 5 on that exam was likely very well ahead of the curve going into a university. I was able to skip I believe 3 courses at my university based on earning a 5, and I doubt the same is true of the present A exam.

[wikipedia]: https://en.wikipedia.org/wiki/AP_Computer_Science#AP_Compute...

just2n··on 'Pardon Snowden,' one tech exec tells Obama, report says
To remain off topic:

It's not just him. The full quote:

"Obama met Tuesday with 15 tech executives, including Apple CEO Tim Cook, Google Chairman Eric Schmidt, Facebook COO Sheryl Sandberg, Yahoo CEO Marissa Mayer, and Twitter CEO Dick Costolo, with the official purpose of discussing how his administration can improve its Healthcare.gov Web site."

None of these people seem particularly good candidates for a discussion on how to make healthcare.gov better. It's also highly questionable that only highly ranking executives were invited. It feels to me this was more of a face saving publicity stunt or a talking point. It would've been more useful and cheaper for Obama to just have Google or Yahoo build a replacement healthcare.gov website, or open source the task and ask them for contributions.

Where's the "let's get shit done" focus?

just2n··on The Flow Fallacy
Eating is good. I love eating. I eat all the time, because I'm a human. There are even studies that show that eating is good for your health. It can even keep you alive.

But did you know that even though eating is good for you, it's also bad for you? If you eat constantly, you can become obese. You are at risk for heart disease and diabetes.

Therefore you should not eat.

Did I do it right? I like this style of blog writing.

just2n··on Winning at Candy Crush
I was. Unfortunately it seems like they're all dead or generally inactive these days. I do wonder where the new communities are, because surely there are kids going through the same things we all went through in learning by breaking things.
just2n··on Winning at Candy Crush
I competed in a couple of the early CAL seasons legitimately (main and then invite). Most of us never condoned cheating in league play or even in most public servers. That's the part where you're ruining games for other people. There were, at one point, quite a few servers dedicated to cheating, however, and even a competitive scene to see who could make the best cheats.

But leagues actually made things more interesting. They started creating their own anti-cheats and those were just new shiny toys to break as well. It's quite satisfying to defeat them, even if the goal isn't to cheat in a league.

just2n··on Winning at Candy Crush
A long long time ago before I ever wrote a line of code, I'd just play all the games I could. I was fascinated by how they worked. I later found a book on BASIC that introduced programming by having the reader write simple word games. After learning the basics, I then would wonder how FF1 managed to change states from being in a tiled map and exploring the world into a battle screen and back again, which led me to more learning and eventually I ended up making a very shoddy Zelda clone that ran in DOS. I think I was 11 or 12 at the time?

Anyway, one day a long time after that, I was playing this new mod for Half-Life called Counter-Strike. It was fun, and I had started learning C and about OpenGL to understand a bit more about how HL worked itself. But on this day I saw a guy just running through de_dust getting tons of headshots. Watching his camera, it seemed he had superhuman aiming. Comments about cheating flew, and this was long before the game was infested with cheats. He also seemed to know where everyone was. How?

A few hours later I discovered he was using a cheat called ViperG. It along with another cheat called XQZ were the only known public cheats at the time. ViperG was open sourced on a forum called clientbot at the time. Since I was learning C, I was actually able to read the code. Back then, HL only imported mod client function implementations using DLL imports, so you could write a DLL that exported fake client functions while also importing the real ones from a renamed client.dll, which let your cheat intercept all of the client API calls. Most in ViperG were just pass throughs, but one would gather entity information from a drawing API and another would draw some text on the screen in a HUD update API, etc. It was almost no code but it rendered little '+' signs on every player through walls and would let you automatically aim at their heads. Crazy.

This is when I realized that I could actually take software people had written and break it to make it do whatever I wanted, and that's when I feel like I really started learning things. Understanding how programs ran on my OS and learning how to reverse engineer came pretty rapidly. XQZ was closed source but had some really nice features, so I'd reverse its gl function exports and figure out exactly what it was doing so I could replicate them in my own cheat.

Doing what the author did here for modern MMOs can actually be a very difficult exercise, even for seasoned reverse code engineers. I've done it for several games, essentially reversing the entire netcode to write cheats that automate client actions, and there are all sorts of ridiculous traps I've seen to prevent you from doing so. One game even went so far as to require you to parse a terrain file and send the cell ID of your movement target in every movement packet, along with the absolute coordinates. This was slow as an iterative find process as a map had tens of thousands of triangles and you'd be sending these quite often, so naively you'd just loop over each triangle and check if your target coordinates were inside of it. This gave me a nice introduction into quadtrees and other algorithms that can make this operation asymptotically much faster. Yay learning.

To this day, I can only play a game so much before I get an overwhelming urge to break it. I think that despite the stigma of cheating, it's a great way to learn. It's comparable to taking something apart to see how it works and change it around a bit. Just don't take it too far and ruin games for other people.

just2n··on Vi Hart: cramming G+ into YouTube has made comments even worse, I'm leaving
Both. They aren't mutually exclusive. I don't believe ads are a valid source of monetization. Once you start showing ads, you invariably become evil.

Free to use, free content by default, with premiums and ratings/comments to help people decide what's worth paying for.

There are a number of shows I watch on YT that I find very entertaining. If the latest 3-5 episodes, posted daily are available to a channel subscriber for something like $2.99 a month, and episodes older than that are free, you can either watch things for free or get access to them as they're made and be more involved with the author via comments, etc. There are more options than "free" or "paid" or "advertisement supported." Unfortunately we're still stuck in a world that's riding the coattails of the cable industry, which is now dying, so perhaps that's a bad model to emulate.

just2n··on Vi Hart: cramming G+ into YouTube has made comments even worse, I'm leaving
Is there any development into an open and free video sharing site similar to what YT used to be? Something where the users of the site are actually the customers and are treated as such?

There is plenty of content I'd subscribe to see on YouTube.

If there is, it's something we should promote. If there isn't, we should build it.

A note to Google: when users are looking to get away from your otherwise incredibly successful services, it might indicate there's a very serious problem that should be corrected immediately. People want alternatives to Search, Mail, and now YouTube based on your policies and how you mistreat and ignore users. Perhaps something needs to change before this evil spreads to everything Google owns.

just2n··on A spreadsheet in fewer than 30 lines of JavaScript, no library used
Put it in a sandboxed iframe, serve it from a separate domain, and use a very restrictive CSP?
just2n··on Why You Should Never Use MongoDB
I once tried to insert a screw using a hammer. I'll be writing my article "Why You Should Never Use A Hammer" shortly.

And here's the crux of the problem with this article, and of so many articles like it:

"When you’re picking a data store"

"a", as in singular. There is no rule in building software that says you have to use 1 tool to do everything.

just2n··on Long-Time SEO Jill Whalen Moves On, Praises Google For Rewarding Content More
I might be able to take comments like "rewarding content more" seriously if w3schools wasn't still at the top of almost every HTML, CSS, and JavaScript search query.

I realized one day that I just use Google to quickly navigate a few websites I actually do use. This is something like the 99.9% case. At that point, I realized my search queries where I include the website I want and keywords I want to find in that site were me specifically doing what Google was supposed to be doing for me: finding quality content. I know where the quality content is. Google apparently doesn't. What's the point of it?

just2n··on Google shares hit $1,000 after strong earnings
It includes no link to normative documentation, for one, but this isn't one of the most egregious examples of w3schools sitting at the top of search results when it provides absolutely terrible (either wrong, or completely useless) information.

A better example is: "html iframe element". Go ahead and look. What's more interesting here is that if you modify this query to "html iframe element scripting" the top 3 results are now w3schools, one related to the <script> tag, while the relevant section header in MDN on scripting isn't even highlighted in the matching result from MDN. The word "scripting" does not even appear in the rendered DOM of the w3schools page for <iframe>.

At this point, it's pretty safe to say that there's a reason, distinct from content quality, why w3schools is always promoted over better sources of information. Popularity doesn't seem likely either (http://www.alexa.com/siteinfo/mozilla.org vs http://www.alexa.com/siteinfo/w3schools.com). The site is:

1. Covered in questionable and low quality ads.

2. Intentionally misleading in general but especially in name (w3schools is not affiliated with the W3C or any standards body).

3. Abusing its position (in both search rank and in its misleading name) to sell useless "certifications" that not one company in existence would take seriously.

Why doesn't Google consider this a scam and factor that into its search ranking?

just2n··on New US $100 bill to debut Tuesday
How much money do counterfeiters cost us, anyway? Even if they have, to date, inserted only $70,000,000 of counterfeit bills, the impact to inflation is minimal, and really it only hurts a few individuals here and there who aren't able to circulate the bills. But how can you measure this impact, and, if we don't fight it, what would its projected potential impact be?

Then I'm curious about these questions:

1. Is this the most cost efficient method to deal with it? It seems a bit silly, to me, as this is a game of cat and mouse, and those tend to be very expensive in the long run, if you want to win.

2. Would it be worth investing in a digital solution such that a bill could be copied, but only one copy of that bill can ever be recirculated, so you could "back up" your money, digitally, then re-print it somewhere else, but you could never spend it more than once, as a general solution to counterfeiting?

3. Would either of these actually save more money than just ignoring the problem?

4. 100% digital? Maybe not online as a requirement, but definitely tap your card to transfer funds to someone? Why do we still have paper bills anyway, with multiple demonstrated cryptographic protocols that could replace them entirely?

just2n··on Write less
I disagree.

You understand my context, though, right?

just2n··on I challenge you to remove the gray ad using Adblock
It still has a style that the other image doesn't:

    style="height: 250px; width: 250px;"
After that, other than positionally blocking them, there's nothing that can be done short of visually inspecting the element.

You could modify the script to randomly place the ad either first or second, so you don't need the third <img> tag with no src.

What is the goal of this experiment?

just2n··on Callbacks as our Generation's Goto Statement
Not quite in this case. I'm making an assumption that the Ask function provided by the parent is actually asynchronous.
just2n··on Callbacks as our Generation's Goto Statement
Coroutines (or generators) are a really nice sugar for callbacks. This looks a lot like ES6's yield, just s/await/yield/.

But to answer your question, since these can't be done in parallel, you'd have to keep track of which player you're asking:

    var playersAsked = 0;
    var askNextPlayerHisName = function(done){
        if (playersAsked === players.length) done();

        Ask("What's your name?", function(name){
            if (IsValidName(name)){
                players[playersAsked].name = name;
                playersAsked++;
            }
            askNextPlayerHisName(done);   
        });
    };
    askNextPlayerHisName(function(){/*...*/});
just2n··on The Hardest Logic Puzzles
Why not use a residual sum of squares here?

https://en.wikipedia.org/wiki/Residual_sum_of_squares

just2n··on The PRISM letter Google, Yahoo, Apple, Facebook, Microsoft are sending Congress
If I was being compelled to violate the 4th Amendment rights of my customers, I'd massively and securely erase any data that isn't vital to my service, or if that conflicted with the rights of my customers given being compelled by a secret court, I'd simply shut down my business.

That's what I'd expect any company which espouses a "do no evil" policy to do. Literally, if you are doing evil, especially if you are being compelled to do so, take whatever action is necessary to prevent further evil from being done.

As for the letter in the article, I find it completely insufficient. Asking for the ability to disclose how many secret compulsions are made against these companies isn't useful information for us. Further, it doesn't actually fix the problem. There shouldn't be secret requests being made. It should all be done under normal warrants, with exceptional cases that actually require secrecy decided by a judge, not the NSA. In this way, when your information is collected but isn't pertinent to national security, Google can actually inform you.

just2n··on Schema-less is usually a lie
Isn't a schemaless database just a filesystem?
just2n··on UK law says provide key to encrypted data or go to jail
I'd think it's also an issue of the 4th. Consider sharing a machine with different user accounts. Asking me to decrypt a drive just might be an unreasonable search, because outside of logical partitioning, there's no concept of "a user's files" when the police just use a disk copy tool to pull all files off the disk.
← PreviousPage 4 of 13Next →