skysight-inc/HackerNews huggingface dataset:
FreeWheel | New York City | Full Time, ONSITE | VISA sponsor available

FreeWheel helps the television industry generate revenue from their premium content through a robust technology platform, which enables consumers to watch entertainment on any devices from PC, mobile, set-top box to traditional TV.

FreeWheel New York Engineering Team is part of our global engineering team who are building advanced and high quality applications, servers and tools to manage million dollar deals, handle billions of daily requests and process terabytes of raw data everyday. We are hiring for:

- Golang Developer (select Software Engineer when applying)

- Test Infrastructure and Tools (select Test Engineer when
applying)

- Linux System Engineer

Detail & apply: http://freewheel.tv/careers/ (please mention HN as source)
Not a stupid question at all. I refuse to install the app on my phone for both privacy and productivity (distraction) reasons.
If what you're after is 24x7 always on machines in a single DC, you're absolutely right: both GCE and EC2 are charging you for a premium you're not using (scale up and down, refresh your machines, handle power failures and maintenance, geographic diversity).

That said, I think your first two examples (Hadoop and Ceph) are competively priced on Google Cloud. With Dataproc, you can put all your HDFS data on GCS and then run your cluster on Preemptible VMs. Combined with the ability to spin up and down as you need it, that's actually hard to beat economically in a colo setup.

Disclosure: I work on Google Cloud.
Location: Washington DC
Remote: No
Willing to relocate: Yes
Technologies: CUDA, MATLAB,C,C++,Python
Résumé/CV: Soon to be Ph.D. grad in aerospace eng. Research in fluids, structures, magnetics, optimization and a bit of robotics. Strong self-taught programming skills.
Email: steve g sherman at gmail
The "server" in "language server" does not mean "server you access over the network" but "other process (on your machine) your editor talks to". (This is just the spec for a protocol.)
Localytics | Boston | Front End, Full Stack, Back End, Mobile | ONSITE

* Front End - ES6, React, Redux, Webpack

* Full Stack - Scala, Rails, AWS

* Back End - Scala, MPP DBs, AWS

* Mobile - iOS, Android

Localytics provides a mobile engagement platform for many of the world’s top app publishers including ESPN, Grindr, Periscope, and HBO. Our customers rely on us to keep their mobile users happy and engaged. We provide tools to drive great app experiences including push messaging, mobile analytics, predictive analytics, and individualized in-app experiences.

* Engineering blog: http://eng.localytics.com

* Office space: http://bostinno.streetwise.co/all-series/photos-inside-local...

* All open positions: https://www.localytics.com/company/careers/department/?depar...

* Apply: jobs@localytics.com
If we want to nitpick, wouldn't this test only work for people who read the language? In theory, if you spoke Greek, but never learned to read it, you would pass the test as well.

Fascinating though, thanks for the link.
Decentralized competitive software development on Solidity
As someone that has fallen for the "event sourcing" promise before, the article does a decent job explaining the promise. Not sure if it will be the next article, but the actual task of delivering on this work is where things break. Hard.

The vast majority of the things you will ever program are pretty much guaranteed from one statement to the next. Hard boundaries, where things can fail, are often decently understood and actually quite visible in the code.

Moving everything to be an event completely throws this out the window. You can take a naive view, where you pretend from one event to the next is safe to happen. However, to start building up the system to cope when this is not the case starts to build a complicated system. In areas that are decidedly not related to your business domain. (Well, for most of us.)

Maybe some day there will be a system that helps with this. Until then, my main advice is to make sure you have solved your system with a naive solution before you move on.
> The success of many companies, and probably all of the unicorns, has nothing to do with technology.

This is 100% true and unfortunately gets distorted from the financial backers who pump them up for unicorn status. Quite a dichotomy:

"Software is eating the world!"

"The hard thing isn’t setting up an organizational chart. The hard thing is getting people to communicate within the organization that you just designed."
> or allow the programmer to specify which one should be used with an annotation.

That's exactly:

> give all of those functions different names.
The report includes only links to third-party information, eg.: https://noscript.net/about/news.ycombinator.com;news.ycombin...
Rsync time backup

This script offers Time Machine-style backup using rsync.

https://github.com/laurent22/rsync-time-backup

> What do you hope to build this month?

There are a few open issues, pull requests and todos. One example is an optimization to delete old backups faster. Another is to detect when a drive is FAT and adjust rsync parameters accordingly.

> What kind of skills do you need?

Good knowledge of Bash and Unix/Linux/Cygwin.

> Your license(s)

MIT
> I would never work in this town again, etc.

Of course they contacted you in 6 months and begged you to reconsider their offer, right? ;)
Is it me, or is 89 questions a lot of questions? I wonder if the number of questions cuts down on the response rate.

edit: I assume it does, but what is the tipping point?
You could say the same thing for every revolutionary ever.

Gavrilo Princip was just some angsty kid who wanted to fit in with his fellow revolutionaries. He still succeeded at starting a world war.

Every organization is composed mainly of followers, even ones that have recognizably brought progress to our world.
SharkByte Associates | Ottawa, Canada | React Native Developer | 2-month contract | REMOTE

We are looking for a talented React Native developer for a 2-month, full-time contract, with possibility of extension after that. This is a remote position, so you are free to work from anywhere you want.

You will be working with a talented UX designer to create a mobile app for iOS and Android.

For more details and to apply, please email jobs@alphalist.ca
2016 Nobel Prize in Physiology or Medicine Awarded to Yoshinori	Ohsumi [pdf]
I don't really want to split hairs about what test is what test.

I do not write a test that would involve mocking a database. If I have 1 test, it is going to be 1 test that uses the database. Its "the test".. not a "unit test" or an "acceptance test" or a "integration test".. just, "the test."
patio11 has a lot of articles and comments about charging by the week. From your comment, that sounds like how you'd make the leap; you get a lot more autonomy as well.
C is a minimal abstraction over asm and I wouldn't be surprised if this behavior can be configured in some C compiler, even though it would be odd to do so.

What I find surprising is when people say C is a simple and small language that's nice to build portable programs in. So much of C is undefined behavior or implementation specific that many professional users pin a certain compiler toolchain version for a project. Part of it is due to changing and hard to predict optimizer passes, but most of it is due to the purported portability feature of C. I mean, if I leave a lot of the semantics undefined or to be defined per compiler+target, then it's not really a portability abstraction. Not to mention the missing or, if you consider POSIX, inconsistent across platforms, C stdlib.

It's educational to look into Modula-3 and SPIN. SPIN is like MirageOS but with dynamic loading of components whereas in Mirage everything is compiled ahead of time into the final image. I mention Modula-3 because it's of similar age as ANSI-C and serves as an example of an OS written in a comparatively safe language around the same time Unix won and gave us the hegemony of C (with all the avoidable security fallout ever since).

Even though software isn't like the real world and could be improved substantially unlike world politics, we still continue dealing with bugs due to C, although we have better options. I think as long as new operating systems or libraries and applications are written in C, this won't change. Just the idea of writing kernels for IoT systems in C in 2016 makes no sense from a reliability and high assurance perspective. Getting there half way would be exposing hard-to-misuse C APIs where the implementation is in a safe language (Rust, ATS2, etc). For the moment consuming C APIs is the cross platform library interface we have to deal with, but having at least the implementation be safe would go a long way.
RAII can wrap heap-allocated data. Also bss-allocated objects are common.
Location: Detroit

Remote: Yes

Willing to relocate: No

Technologies: JavaScript (full-stack), Node, Angular, React, Java, SQL/MySQL, Docker

Résumé/CV: http://bit.ly/2dn0A8D

Email: israelvicars at gmail
Agreed - LeaseWeb, OVH, Hetzner, and even SoftLayer if you call and negotiate can all be great options and have been very stable for many folks for dedicated servers. Generally I recommend that people not make long term commits, as it gives more leverage if there are network hot spots or other issues you need their help resolving.
CMake 3.7 provides server mode
I understand what you're saying. I guess where I get tripped up in that "model" (for lack of a better term) is that when is that NOT the case? In other words, if what you're saying is logically consistent, why can't we just make everything a public good? What's the determining factor that makes this logic work for one thing but not anther?
Yeah, I recently read on some forum someone who was looking for a quick C++ training for a friend and said "he doesn't need a deep training, just some basic syntax, he's not a programmer, that doesn't interest him, he's just doing scientific calculus".

I was like: Oh boy... getting arithmetic calculation right is really tricky and you have to understand many not-obvious details, especially concerning the behaviour of floating-points numbers, and then you have to make choices or compromises depending on your requirements. But if you have no idea of the limitations of CPUs and languages, the naïve requirement is just "exact, full-precision, as long as needed" and you'll hit some bugs sooner or later.
Hey, by the way, in case you happen to come back and see this after the fact: I've found your perspectives in this thread compelling, and while I'm not completely convinced, I'll definitely be incorporating your arguments into my thinking in the future.

Just thought I'd let you know you haven't been shouting into the wind!
All init should do, arguably, is start the RC, start up the system, shut down the system, and reap zombies. Shutdown should be handled by the RC, and then passed back through to init, which does the kill and actually properly shuts down the system. As such, it should be exposed via a pipe, or other mechanism to only that trusted program. That handoff would happen during boot. Reaping zombies and startup only receive input from the kernel, or indirectly from the user in the form of processes.

If you want your init to integrate RC or process management (many do), sure, write it in a more complex language (but depend on external libraries minimally, and make sure it's statically linked!), but for the idea, minimal init, C is perfectly fine.
SEEKING WORK - Denver, Colorado (CO), Remote

kjohnson+hn@fosslancer.net | http://fosslancer.net

Senior DevOps / Operations / Infrastructure Engineer with 10 years of experience in Linux administration and 5 years in DevOps / Configuration Management / Automation.

I can do 'all things Linux / FOSS', and more. I've built both large-scale private clouds and all of the supporting infrastructure, as well as datacenter-grade VPCs in AWS.

Currently building and scaling AWS environments with Ansible, and doing 'all things ops and security'. I have approximately 20 hours per week of availability currently, and would love to help you build your startup or automate a pesky problem.

Experience with:

- Chef, Puppet and Ansible

- AWS, vmWare and vSphere, Docker, LXC

- Networking - firewalls, switching, security

- Infrastructure services (e.g. DNS, DHCP, DDNS)

- Most FOSS application (e.g. apache, nginx, mysql, postfix)

- Datacenter buildouts

- Hardware automation - experience with cobbler, PXE, netbooting, and HP Blade centers.

- Full stack engineering (CakePHP, PHP, AngularJS)

- Bash, Perl, Python, Ruby

- Continuous Integration (Jenkins, TravisCI)
StreetShares | Software engineer (angular, python) | Full-time, onsite | Washington, DC (Reston, VA) | $60-$95k + equity

http://streetshares.com

StreetShares is hiring passionate and hard-working software engineers to help build our online lending platform (angular on client, python on server, mysql db). Engineers will work in a fast paced agile development environment and can expect to contribute significantly to the future of our company. This position will be primarily focused on all aspects of our system including application, database, and front end code. The ideal candidate is comfortable being an intricate part of a small agile team, can engage across functional areas and is a coding master. This position reports to the VP of Product Technology and is based in our Reston, VA headquarters.

email resume to dev@streetshares.com
Slack | New York, NY | Onsite | Full-Time | Senior Software Engineer - Search, Learning and Intelligence

Slack is looking for experienced engineers to help design, prototype, and productionize features that make Slack smarter the more companies use it. Our goal is to make people feel less overwhelmed by Slack’s information avalanche and give them superpowers to find fast answers — whether from their coworkers, search, or bots. The work will span many disciplines: search/information retrieval, recommendation systems, natural language processing, and machine learning.

We're a growing team in NYC working on some really cool problems.

If interested feel free to email me at mmontazeri@slack-corp.com or apply here: https://slack.com/jobs/273177/senior-software-engineer-searc...
PA Consulting (Technology) | Cambridge, UK | Onsite Interns

"PA’s dedicated technology centre near Cambridge is full of the brightest engineering and scientific minds; we deliver “concept to manufacture” engineering research design and development services to our clients across a broad range of sectors, including communications, healthcare and consumer products. We have been bringing our clients ground-breaking innovations for much of our 70-year history.

The nature of our business means that we can not only offer our engineers an exciting variety of work, but also the opportunity to see an initial idea develop into a real tangible product over a relatively short time period. As engineering professionals, we like nothing better than delivering a product solution that provides our clients with a competitive edge.

You may wish to find out more about our latest technological innovations:
http://www.paconsulting.com/technology-and-innovation/ "

We're looking for Software Engineers across a number of disciplines:

- Embedded
- Systems
- Networking
- Comms
- Machine Control (including PLC)

Here's a link to a not particularly help job description page:
https://careers.peopleclick.com/careerscp/client_paconsultin...

Feel free to email me directly at:
will [dot] wykeham [at] paconsulting [dot] com
As I've grown older, I've learned that often the best thing is to just listen to people. Sometimes just letting people vent and share their problems is the most you can do (and it is helpful to most people to have an outlet, even if to you it seems like you're not "doing anything" or "solving the problem").
This is really neat! You may want to also look at https://github.com/gcanti/babel-plugin-tcomb for some inspiration- I've used tcomb extensively for runtime ADT and typing, but using just Flow would be an interesting challenge!
This may lose precision. Depending on architecture & compiler & flags, your mantissa may be big enough to hold your whole int. An 80 bit extended double has 64 bits of significand.

https://en.wikipedia.org/wiki/Extended_precision#x86_extende...
Consider this then: If you could build an app as polished as Uber's, there are hundreds of minicab companies in the UK alone, most of which have apps massively inferior to Uber yet has to compete with them, and that are thus a market for better apps.

There probably is a lot of luck involved in becoming Uber, but if you can make an app that good in a short amount of time, then the opportunity cost in doing that and sending a demo round to a few dozen minicab companies is very, very low.

Yet these companies are still stuck with horrible apps, because in reality it takes a lot of time to develop a good one, even if a prototype is fairly trivial.
Iraqis Use 9/11 Bill to Demand Compensation from US for 2003 Invasion
What if my DB is corrupted - Why did it get corrupted? Sounds like you have a good failure to chase down. It would be even worse if your prod DB got corrupt!

For most use cases, a given piece needs 1 test around it. "The test". If you can test your logic + view + db all in 1 test, you get a pretty huge efficiency gain.. over sitting there writing "unit tests" where you mock what a select * from a database returns. Life is too short to do that.
Location: London
Remote: No Preference
Willing to relocate: Yes
Technologies: Objective-C, Java, Photoshop, SQL, Git, Swift, PHP
Resume: Please email
Email: davidbn [at] protonmail [dot] com

Creating iOS, Android and Mac OS X applications for over 5 years, including design, development, UI and marketing. Have launched multiple apps to great success on the App Store. Prior to this I was working in web development using PHP, MySQL, HTML, CSS and Javascript.
Feel free to reach out to me directly if you're interested in participating in any of these projects, I'll help you get started. Note that I don't always have things getting done "this month" - tell us you're interested and we'll find something for you to work on.

- - -

Sway (https://github.com/SirCmpwn/sway) - An i3-compatible Wayland compositor (MIT license)

This month: we're shipping Sway 0.10, but still accepting bug fixes and new features from our roadmap or your imagination: http://swaywm.org/roadmap

Roles for: C programming, docs writing, testing, user support

Visit us on IRC: #sway on irc.freenode.net (webchat: https://goo.gl/nOg1X4) Feel free to stop by and get some direction for how you can help out!

- - -

aerc (https://github.com/SirCmpwn/aerc) - An async command line email client (MIT license)

This month: someone's working on key bindings

Roles for: C programming

Ping me on the IRC network of your choice (SirCmpwn) and I'll help you get started, there's no IRC channel yet

- - -

KnightOS (http://knightos.org) - An operating system for calculators (MIT license, mostly)

TODO: Too much for a HN comment, tell me what you're interested in and I'll hook you up with the right project

Roles for: Programming in C, assembly, JavaScript, Python, docs writing, marketing

Chat: #knightos on irc.freenode.net http://www.knightos.org/irc/

- - -

TrueCraft (https://truecraft.io) - An open source implementation of Minecraft beta 1.7.3 (MIT license)

This month: things are quiet, ping me and I'll set you up to contribute

Roles for: Programming in C#, Python, JavaScript, docs writing, marketing

Chat: #truecraft on irc.esper.net (webchat: https://goo.gl/G8evBV)
www.rangle.io - Toronto, Ontario, Canada - ONSITE

Multiple positions including: JavaScript Developers (intermediate & senior), Scrum Masters, UX/UI Designers and Testers.

Rangle is Canada's top modern JavaScript consultancy. Currently using AngularJS, React.js, Node.js, MongoDB, Cordova and Ionic, we help companies build amazing applications that work seamlessly across desktop and mobile devices.

Hiring process is as follows: Phone Screen, Coding Assignment (2-3hrs), In Person Interview, Reference Check and then Offer.

You can reach out to me directly at martin.hauck[@]rangle.io if you have any questions.
Programming practically requires a willingness to continue learning. But his statements are deeply troubling:

> I’m not annoyed by the way statements are formed, or even by the precedence order (which I readily admit to not knowing or understanding or even caring much about)

> And don’t complain about how I parenthesize my arithmetic statements. I already mentioned precedence order. All those parens are the result of yet another lesson I learned to avoid working weekends.

... his example is saying (a×b)+(c×d)+e->f. I understand it being a learning curve to memorize that bit-shifts have higher precedence over bitwise operators, but ... you learn that multiplication happens before addition in elementary school! It's a pre-requisite to learning pre-Algebra in middle school. This isn't even some arcane programming thing you have to learn.

Sure, you can pepper all your code in parentheses, but sooner or later you're going to come across code that doesn't. And a person like that working on such a codebase is a huge danger.

I don't say this to be mean, but I really don't think programming is the right profession for this guy.
What New York Can Learn from Barcelona’s ‘Superblocks’
What a waste of time. The activity will just move elsewhere.

Working towards requiring registration/background checks of private sales would actually accomplish what they want. Lobbying Facebook to disassociate themselves from the sales will accomplish little more than moving the sales off of Facebook.

And of course, given that there are tens of millions of unregistered firearms in the US, all a registration law would do is inconvenience people willing to comply with it, it wouldn't stop people looking to get a gun without registering it.
「メールけいしちょう」を Elastic Stack で可視化する
> Huh? I don't get what you're doing there, or why you reset unstaged changes 3 times in a row... If you're trying to get rid of a commit, a single reset --hard will do. But why are you trying to get rid of a commit, and how is this more work that using stash? If you have unstaged changes you don't want, you have to reset either way, this is orthogonal to comparing stash vs no-stash workflows.

I accidentally made changes while on X when I wanted to make them on Y. I don't want to just "git checkout Y" in case that conflicts. If I do as you suggested and commit them (on X) and then cherry-pick that commit onto Y, I then have to go back to X to remove the commit I made, otherwise I have the changes on X as well.

> I don't know what a single dash does for you. On my git, I get a command line error with a single dash

"git checkout -" switches to the previous branch. Which is great, but it's frustrating that I can't do e.g. "git merge -" to merge the previous branch - logically that should be the same kind of thing.
Location: Wisconsin
Remote: Only
Willing to relocate: No
Technologies: LAMP (PHP, Symfony/Doctrine, etc), Devops (Docker, AWS, Ansible, etc), Git
Résumé/CV: https://www.linkedin.com/in/mathewpeterson
Email: mathewpeterson at me.com
Location: San Francisco Bay Area
Remote: Yes, can be.
Willing to relocate: No
Technologies: Agile/Scrum
Résumé/CV: 9 year Scrum Master/Agile Coach, Kanban also. Many teams, co-located, taught many Scrum classes.
Email: macsenour@gmail.com