skysight-inc/HackerNews huggingface dataset:
What should you learn together with Ruby on Rails
I don't support MSIE 6, or 7, or 8, or indeed any version of MSIE at all. But, and here's where it's different to not supporting users without JavaScript enabled, sites I make are still perfectly viewable in MSIE. And Lynx. And other esoteric browsers.

Progressive enhancement/graceful degradation allows me to build sites that work everywhere.

Not support users with JS turned off is exactly the opposite.
Nice! That's handy. Thanks for the auto populated "lazy" links, I would have hit the back button without them.

A recommendation: work on the deign and UI. the calculator columns don't line up and I didn't see the conversions at the bottom at first. I had to hunt around to find out where they were.
Actually there are some CSS vulnerabilities that works without JavaScript like <div> overlay affecting phishing attacks: http://i8jesus.com/?p=10

Via: http://stackoverflow.com/questions/718611/css-injection-what...
If price isn't an issue I'd definitely look into the Razer Blade 14"
It's every bit as good as a MacBook Pro in build quality and has really high end specs (since it's a gaming laptop) is also touch screen and a windows machine
Because it's prone to bad coding and makes my browser crash. Even sites made by giants like google and facebook crash because of bad JS code.

Because web experience has become shitty ever since excessive usage of JS. I'm sick of pages that download megabytes of JS libraries just to animate a button hover. Thanks to CSS3, Now we can do all the needed UX/UI stuff without JS. Make the web better by not using JS.
Only if you upgrade regularly. Support is very short and you'll get stuck without updates.
Ask HN: Which algorithms change implementation of data structures at runtime
Data structures "define" how real-world concepts are structured and represented in computer memory. For different kinds of computations a different data structure should/can be used to achieve acceptable performance (e.g., linked-list versus array implementation).

Self-adaptive (cf. self-updating) data structures are data structures that change their internal state according to a concrete usage pattern (e.g., self balancing trees). These changes are internal, i.e., depending the data. Moreover, these changes are anticipated upon by design.

Other algorithms can benefit from an external change of representation. In matrix-multiplication, for instance, it is a well know performance trick to transpose "the second matrix" (such that caches are used more efficiently). This is actually changing the matrix representation from row-major to column major order. Because "A" is not the same as "Transposed(A)", the the second matrix is transposed again after the multiplication to keep the program semantically correct.

A second example is using a linked-list at program start-up to populate "the data structure" and change to an array based implementation once the content of the list becomes "stable".

I was wondering if there are programmers that have similar experiences with other example programs where an external change of representation is performed in their application in order to have better performance. And where the representation (chosen implementation) of a data structure is changed at runtime as an explicit part of the program.
Take a look at Prismatic[1] and Lobsters[2]:

[1] http://getprismatic.com/
[2] https://lobste.rs/
Huge sampling bias here. Most people who keep Javascript enabled aren't going to comment here.
I'd love to see some detailed architecture docs for this or similar high-level Linux based rollout.
You always work under other people - even when you own the company, you work under your clients. Which means that if you are employeed in a cubicle, you can choose the mindset of an independant company - make your estimates as if money rested on them, meet your commitments as if the next contract depended on it, and be a peer not a servant.

Just do it. Then when you have the soft skills to run your own business, run your own business
With puppies and kittens, and everyone has rainbow coloured cotton candy whenever they want.

Wake up. You don't get to do any of that when your board is stacked with VCs.
It can be very useful and be used to add useful features.. but 90 percent of javascript is for delivering unwanted annoyances like ads... or when not malicious it can be used to annoy. making what looks like ordinary links to unexpected things and now the browser back button doesnt go back because I was actually clicking js links and operating a js app rather than clicking real links..

There's a small subset of great uses of javascript. The rest is just hovering toolboxes so I can easily "+1" the page despite not having a google+ account.

I prefer the web without the annoying stuff. Once js gets past the "look at what I can do" phase id welcome it more openly.
Please don't break everyone's formatting by writing something quite so long that won't wrap. Thanks.
How do you do "configtest" and "graceful" with old init.d scripts?

# /etc/init.d/mysqld configtest
Usage: /etc/init.d/mysqld {start|stop|status|restart|condrestart|try-restart|reload|force-reload}

# /etc/init.d/mysqld graceful
Usage: /etc/init.d/mysqld {start|stop|status|restart|condrestart|try-restart|reload|force-reload}
Honestly I think you are giving away too much on the free plan. You should try removing the free plan and have pricing like:

Hobby => $8
Business => $29
Enterprise => Contact

Also, where are you located, since I noticed that you spell organization as organisation. :-)
Valve flat org structure, desks with wheels [pdf]
A short walk with Wigle shows literally dozens with WPS on, and usually 4-5 with WEP, plus a couple of open ones that aren't paid. WPS is a massive gaping vulnerability as long as you can stay nearby for a few hours, while WEP gives the illusion of security to clueless people but is worthless (yay RC4... worst algorithm ever.).
The author seems to be quite clueless: not even a single mention on [indie] games - the true art of the future (in extreme, but not uncommon case requires drawing, coding, composing and design skills). His understanding of future art reminds of vintage visions of coal-powered spaceships.
What about those that disable js because you didn't test your js on their mobile browser and it renders the site unusable?
Thanks for the book link! I'll buy it and give it a read :)
Neither can JS, as it is sandboxed.

The interpretation and application of CSS directives is not Turing complete, but often enough to leak information from your browser.
Crichton was an anti-science loon who, coincidentally, believed in spoon bending. Good fiction writer, though.
Agree on ThinkPad, but attention the models from this year on (model names finishing with 40) don't have physical trackpoint/-pad buttons anymore, the keyboard layout is less accessible, the models with touchscreen reflect so much you get headaches after 30 minutes. I sent back a T440 and bought a used T430. I am too worried about my next model.
Inbox seems like a potentially confusing name for an email-based product.
Hi, Yaron! I was recently looking into using Core for one of my projects, but have so far failed to find any good, clear, complete documentation or how-to guide. Is there anything like that available online? I guess I could read the Real World OCaml book to learn parts of it, but I already know OCaml...
Also 2 social + 1 artistic = "You draw nice concept drawings which your friends like. However, none of them will pay you for it."
#2 resonates with me. I always feel I might break something on a Mac.

I only mentioned Mac because many HN users cite their experience on linux as not being a good one.
> The author is kind of all over the place,

Yes. His article's intent is to describe a problem.

He then tries to give examples of solutions, and they're bad suggestions. Still, he's right about the problem. We are in a kind of dark age at the moment, and the technology web stack is an unnecessary horror.

Regarding databases, I think what you're proposing is a step in the wrong direction. Databases is one of the major problems of our age, and cause of software being so difficult to get right. Many programmers will use a database to solve any problem.

There's an endemic problem of developers exposing databases as APIs, and then getting immediately bogged in complexity. We need less of that.
I don't know the exact technologies you're using, but I'd assume they were in the underlying server - so nginx.
Carefully handcrafted catalogue of devops-related Internet resources
Capitalization of "fun" makes all the difference when reading stories about it.
Yes, the AGPL does require the release of the source of any code built on components licensed under it. Chances are they'll have a commercial license, though my salary disputes your assertion that an AGPL base can only be used as a toy - we have contracts with some of the largest companies in my country.
Why doesn't Microsoft contribute to Clang/LLVM? If Clang achieves compatibility with Microsoft libraries, then I see no reason to keep using MSVC.
Integrate Nagios and Pagerduty and engage your IT Operations nervous system
I wanted to encourage people here to give it a try and get some feedback. The splash page doesn't do a great job of selling it by itself; I think you need to try it to see the value. The Free tier allowances are probably a bit generous though.

It's worth noting that the costs for this really are tiny - just a couple of servers. I've done the sums, and even with the business tier costing $20, the profit margins are significant.

The biggest unknown is how much support each user will generate, and that's probably a good reason to raise the business price. Anyone who signs up before then will be offered the existing price of course.

Based in the UK. The site already does some work with geolocating the user (for giving localised pricing and also for inferring date formats when you upload spreadsheets), so I suppose I could localise spelling too ;)
Failed experiments do not always fail toward the null
Fisher's principle
The Avengers in CSS
GitLab.com Downtime Postmortem
True. There would be people who 'manage' things and people but I think you missed my point here. Don't want to have people who just sit and talk a lot. Don't want to give the reigns of power to such folks. Don't want to have an 'engineering manager' who codes no more!
I learned C++ first, then Java, then more recently Python.

I really feel like I'd have rather had Python or Java first instead, if only because being concerned about all of the strict formatting and structure in a C++ program puts a level of unnecessary complexity in front of the goal: to introduce a person to programming logic and solving problems with programs.

Those complexities are certainly important, mind you. But not as important as clearly opening the mind to the way a programmer thinks, IMO.
Creating a simple game on a Linux machine:

nano awesomewebglgame.html
PHP CLIFramework with ZSH completion
Hotspotd – A linux daemon to create wifi hotspot on any distro
On Debian you usually stick to changing options in /etc/default/grub and don't touch anything in /etc/grub.d.
Yeah but usually "header-only" implies templates, of which there seems to be little in this case. Without templates there's little point in putting everything in headers because all the code becomes inline.

Inlining everything is bad because:

- it makes the binary much bigger.
- the smallest code change forces library users (applications) to be recompiled.

For libraries it's usually better to go to the other extreme: hide as much code and data as possible in the source files. See, for example, https://en.wikipedia.org/wiki/Opaque_pointer. It greatly reduces the need for applications to be recompiled when the library is updated.

It's actually very unusual to put all function implementations inline (edit: as in, inside the class declaration) in C++. I wonder whether the author is a heavy Java user.
Golang, working with Microsoft Excel
Well yes, $445 can relatively be a lot of money, however, in times of globalisation and developers being in high demand one just has to think outside the box a bit and join a company remotely if possible. I'm not saying it's easy, but can be done.
The correct English spelling is Organisation. People in America using American version of English tend to spell it as Organization.
Yes, quite a few Portuguese universities.
Correct Link: http://9to5google.com/2014/07/07/samsung-factory-robbed-at-g...
While true, at least modern C++ provides the tools to write secure code, if one wishes to do so.

Whereas with bare C, there is no hope.
+1 on showing the spreadsheet. It doesn't have to be on the docs, can be on the website. I'd put front and center, if you have this spreadsheet, it creates this API. You can even look into giving access to the sample spreadsheet for testing directly from the web pages.
> because all the code becomes inline.

The language says that's just a suggestion to the compiler, right? Does any compiler actually inline for non-trivial methods?
Hi HN,

I built this on July 4th, while pondering what effect Twitter has on modern day communication.

It analyzes the grade level of a Twitter account by using a modified version of the SMOG readability index and tells you your "smartest" and "un-smartest" tweets. Beak also tells you how you rank vs other Tweeters.
There's also a leaderboard.

This was a fun day project for me and I'd really appreciate any feedback, comments, and suggestions.

Thanks,
jl
This looks nice. I would suggest avoiding macros in the final release; it should be possible to implement CROW_ROUTE() using template meta-programming instead of #define's.
>To pretend they're not relying on induction, people test "the null hypothesis", hopping to statistically disprove it.

Popper himself doesn't say that disproving the null hypothesis leaves you with the correct one. The problem lies with people who use disproving the null hypothesis as a way of validating the alternative hypothesis.

The fact that they feel compelled to seek indirect validation of the model via disproving one other hypothesis is closer to logical positivism, isn't it, where people feel compelled to have a validation for every statement?

So isn't p-value testing just logical positivism in the garb of Popperianism?

Popper himself in this case would have tried to disprove the actual hypothesis and acknowledged it as a probably valid one in case if didn't find any mistakes, wouldn't he?
For some reason it really bothers me that stack[0] is never used in this implementation.
> One is not really dependent on the other. You could use open source and not allow modifications or you could use closed source software and allow endless customization.

Good point.

> Most of the good stuff ends up in standard android after a while, which wouldn't have happened if no one was allowed to make the changes in the first place.

This was mainly due to Google pushing more stuff through Play Services. It would be nice if there was some more control/constraints on Linux flavours.
I honestly foresaw this and advised my kids to learn Python, it's the new BASIC and the new JAVA-in-college. That does not mean Python is better than others, but it does fit a niche in the education system somehow.

For EE major etc I would still recommend the plain C stuff though. For web-design etc Javascript might be a better course. Overall Python is a nice choice for the generic public.
My primary browser has JS, cookies and plugins completely disabled, and when I open a link and get nothing but a white page it is pretty frustrating.
I understand that with these settings i'm not going to see any fancy animations, menus, ads, games, ecc but I at least expect to see some text.

I don't expect nothing else, if I can get some text I'm happy.
General harmonics
Well, if the other person doesn't at least understand that much, speaking to them is probably a waste of time anyway.
There are already several similar issues in their bug tracker with no resolution.

These all seem similar to what i've been experiencing:

https://bugs.freedesktop.org/show_bug.cgi?id=46350

https://bugs.freedesktop.org/show_bug.cgi?id=46296

This is what happened last time i decided to try PA again:

https://bugs.freedesktop.org/show_bug.cgi?id=73945
I am actually working on something similar, called http://apifox.com it's not yet for public but it will be soon
Can someone delete this comment please? I'd like to read the other comments here but this one means I've got to scroll back and forth for each line :(
You don't need javascript to vote here.

You click the up arrow and you get a blank page. Then you click back to continue reading from where you left off (isn't it nice to be able to do that without javscript fucking it up for you). If you want to see whether your voting was logged you can refresh the page and the little up arrow will disappear. If it is a story, you will see it added to your saved stories.
> preferring, at least initially, recursion to iteration to achieve that -- even though recursion is generally the wrong approach in production Python code

Exactly! Intro courses are usually - with good reason - taught in functional style. Which suggests that a language where that style is more natural and appropriate might be a better fit for those courses than Python.

(Though OTOH I wouldn't advocate a language where IO is anything more complex than a function call)
The issue with drivers is a bit interesting. I wonder what pulseaudio does that alsa doesn't.
Nearly almost every American spells it organization.
For me the problem is not the fact that the interface is ASCII, but the fact that is inconsistent. Each menu has its own little quirks to navigate it. Moving the focus from one part of a menu to the other takes different keypresses on each screen.

I was never able to decipher the military config screen. I rely on traps and animals (once I managed to have tigers!) to repel the first small invasions. Then I have Fun.
Three biggest Internet companies in each country
I've seen multiple people mention the GoF's Design Patterns book. This is well known and worth several reads through; it will take multiple passes to grok all of it.

There are several other books that have tried to explain the GoF's Design Patterns in either an easier to approach manner, or in the context of a specific language they have tried to explain where new design patterns have emerged or the original patterns had mutated.

A couple of those worth checking out are

"Head First Design Patterns"

http://www.amazon.com/Head-First-Design-Patterns-Freeman/dp/...

"Design Patterns In Ruby"

http://www.amazon.com/Design-Patterns-Ruby-Russ-Olsen/dp/032...

"Learning JavaScript Design Patterns"

http://www.amazon.com/Learning-JavaScript-Design-Patterns-Os...
If you respond with specific requirements I'll be glad to give you a rundown of options for each requirement, as well as good "package deals" of software that works well in concert.
Show HN: Why we came up with yet another blog directory site?
I've only used Sharepoint very cursorily and that years ago, so my experience isn't the best or understanding complete.

As a first approximation: a Wiki.

Tools such as Atlassian's Trac and Jira (not themselves open sourced) offer a fair bit of the equivalent features.

For setting up Internet portals, a CMS such as Drupal or Wordpress could fit the bill.

One of the features of Sharepoint sites that I've seen is that they're used effectively to "hang" MS Office documents off of them -- as Office docs. This grates strongly with my preference for either HTML or PDF formats for documents, plus some markup style. I'm growing increasingly strongly partial to using either Markdown (for simple documents/pages) or LaTeX (for more complex ones) for document preparation. Yes, there's a touch of up-front training involved, but once you've crossed that bridge, the world opens up, and the basics can be gotten in an hour or so.

The document management pieces are actually something I'd like a solution for more generally, and it's a space that's hugely frustrating. There's zotero, a desktop application, there's git, there are a number of other tools, each of which effectively only address part of the larger picture.

There are a number of free document management tools, but I'm not in a position to recommend any: https://duckduckgo.com/?q=web+based+document+management

Best thing to do is to make a functional list of what it is you're using Sharepoint for, and to find equivalent replacements for those features.
No, not everything will be inlined, but there will still be much more inlining than there should be.

And whether or not the compiler inlines the code, applications will still have to be recompiled whenever there's a code change in the library.
Neither does F#.
I am confused. The fund is set up by the company itself right? So if things get so bad that the company has to shut down, BUT they have a fund big enough to keep running the company, why must they shut themselves down to tap into it? Why can't the original company simply use that money to keep operations running?
While I agree that many of the already given examples of books to read are really good books, nice reads.

I feel the best way to get into the mindset of good design, or design principals - even if it isnt "examples of good design" as the AOSA book - is to get immersed into an architecture formed from a design based mindset different than what you are used to.

Learn something engineered with design principles heavily visible in mind. What is the design principle of a modern GNU/Linux system? Its mosthly philosophical, you wont find the answer in several books, its spread out far and wide and requires that you actually use GNU/Linux for years, to have taken part in its history.

I suggest you pick up and learn JSF (Java Server Faces). Start reading JSF books, Java Enterprise things, start coding it, doing it. One good book is JSF in Action from Manning I believe.

When you begin reading about or trying to make a hello world site in JSF - youll be like "wtf is this, fuck" - thats right - thats you being exposed to a different design principles based mindset. Its not bad, its in fact very good (JSF and the experience).

Only once youve finished say a "community website, friends can befriend each other, send messages, write on wall, share pictures." in JSF, even though it looks as ugly as can be - then youve advanced more in passing those interviews with regards to design principles - than reading any of the books mentioned so far in this thread. But reading the other books wont dis-help you.

EDIT: From experience, the books flaunted around here, Code Complete, AOSA, Design Patterns here there and everywhere, are just bullshit for this task. What your interviewers were asking for is not if you can count and use Design Patterns. Or if you agree or dont agree on which method in a class should be refactored out and what it should be named. Dive deeper out of your comfort zone - go for JSF.
`inline` has a different meaning in C++. The compiler is free to inline the call if it wishes to, but `inline` means that the same function can be defined in multiple translation units without breaking the one definition rule. Example:

// header.hpp
inline int f(int x) { return x + 1; }

// a.cpp
#include "header.hpp"

// b.cpp
#include "header.hpp"

If f was not marked inline, linking a.cpp and b.cpp together would find a conflicting method f, and compilation would fail. `inline` lets the compiler ignore this, and it simply picks one of the multiple definitions as the 'real' one and moves on with the compilation.
Interesting article indeed. Although it lost me a bit with this near the end:

> We all know that bootleg DVD stands are doing something illegal, but the internet literally went black to protest SOPA, a law designed to crack down on digital bootleggers.

That paragraph completely misses the point about the SOPA protests.