hacker news with inline top comments    .. more ..    9 Oct 2016 News
home   ask   best   2 years ago   
1
EC2's most dangerous feature daemonology.net
86 points by dwaxe  4 hours ago   29 comments top 9
1
cperciva 4 hours ago 6 replies      
OK, dwaxe, I have to ask: Are you a robot? Because I uploaded this blog post, tweeted it, and then came straight over here to submit it and you still got here first.

Not that I mind, but getting your HN submission in within 30 seconds of my blog post going up is very impressive if you're not a robot.

2
cesarb 29 minutes ago 0 replies      
What I've done for a previous company was to, as one of the very first things done within every EC2 instance, add an iptables owner match rule to only allow packets destined to 169.254.169.254 if they come from uid 0. Any information from that webservice that non-root users might need (for instance, the EC2 instance ID) is fetched on boot by a script running as root and left somewhere in the filesystem.
3
gtsteve 1 hour ago 0 replies      
This is an interesting attack that I must confess I hadn't thought of, but surely any service that accepts an arbitrary URL has a list of IP ranges to avoid. However, to harden a role in the event of instance role credentials leaking, you could use an IAM Condition [0].

There is actually an example of this in the IAM documentation [1], although the source VPC parameter doesn't work for all services, and I can't see a list of services that support this parameter. This would ensure that the requests actually came from instances within your VPC.

[0] http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_po...

[1] http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucke...

4
djb_hackernews 35 minutes ago 0 replies      
If users can issue arbitrary commands on an instance then that instance should have zero Iam roles and should delegate actions to services running on separate instances.

The instances hosting our users go a step further and null route Metadata service requests via iptables.

5
0x0 2 hours ago 3 replies      
This is interesting! Can this be abused with AWS-hosted services that reach out to fetch URLs? For example, image hosts that allow specifying an URL to retrieve, or OAuth callbacks, etc? Are there any tricks to be played if someone were to register a random domain and point it to 169.254.169.254 (or worse, flux between 169.254.169.254 and a public IP in case there is blacklisting application code that first checks to resolve the hostname but then passes the whole URL into a library that resolves again?)
6
Rapzid 3 hours ago 1 reply      
I've used firewall rules in the past to scope the metadata store to admin users.
7
tex0 2 hours ago 1 reply      
It's much like the same Problem with the Google Cloud. Even worse there I'd say.
8
yandie 1 hour ago 0 replies      
If you're sharing the same instance for multiple users, trying to achieve security among the users is almost impossible anyway. That's why physical separation/virtualization is one of the first thing to focus on when talking about security.
9
logronoide 1 hour ago 0 replies      
Same happens with metadata access in Openstack.

The access is controlled by source IP (and namespace). I wonder if it's possible to spoof the IP and access Metadata of other servers/users.

2
Dropbox, Google Drive and Microsoft OneDrive blocked in Turkey following leaks turkeyblocks.org
147 points by purak  2 hours ago   47 comments top 14
1
batuhanicoz 2 hours ago 2 replies      
This is so annoying for us. I'm not using Dropbox, Google Drive or OneDrive but GitHub is the tool we use the most as a software agency. We've set-up a VPN server for our team for the moment.

Only good thing coming from this is that I've discovered a software called Pritunl today which made setting up the VPN pretty easy.

2
0x0 2 hours ago 1 reply      
Someone on Reddit highlighted that the block seems to key off of the SSL SNI header, regardless of which IP you try to connect to. There must be some Deep Packet Inspection going on here, then?

https://www.reddit.com/r/europe/comments/56h0s3/they_just_bl...

Is the blocking able to handle stuff like fragrouter where the TCP stream is broken down into 1byte payload packets?

3
decafbad 2 hours ago 1 reply      
It's a torrent file you damn ignorant politicians. Tell your favorite IT guys to block this : magnet:?xt=urn:btih:489b0cef1d7d49fe5ae2ae8cc2f0708b8286cbb3&dn=All+mail+Including+Spam+and+Trash.rar
4
kukx 2 hours ago 1 reply      
For those interested in what the leaked emails contained, here's a related article: http://www.dailydot.com/layer8/redhack-turkey-albayrak-censo...
5
andybak 2 hours ago 1 reply      
Excellent stuff. If someone can repost the email leak to every possible service they can think of - then the Turkish government will be forced to make a difficult choice between 'security concerns' and being part of the modern internet economy. I don't think they have the ability that China has to build enough services within their own boundaries to prevent the latter choice causing some pain.
6
CSDude 6 minutes ago 0 replies      
I am sad to say it but Github is also blocked.
7
detay 5 minutes ago 0 replies      
Being an IT worker in Turkey is horribly hard.
8
Raed667 1 hour ago 2 replies      
When blocking do they display a state issued message like "This website has been blocked for X and Y reasons" (like in KSA)

Or do they just 404 it, like they used to do in Tunisia back in the days of censorship?

9
custo15 2 hours ago 2 replies      
I'm in Russia, and I really scared. This is the way we go here, too.
10
80801 2 hours ago 2 replies      
It seems like the turkish government is trying to create jobs here. Building a "nationalised turkish twitter alternative"? The way things are right now, they need a nationalized turkish github service first.
11
wfunction 2 hours ago 1 reply      
Someone warned about this like yesterday... https://news.ycombinator.com/item?id=12668079
12
hd4 2 hours ago 1 reply      
There needs to be some kind of new censorship metric for governments, the weaker the government, the more they try to censor and hinder use of the internet by their citizenry.
13
rahkiin 2 hours ago 0 replies      
Wow, this makes doing your work suddenly a lot harder... I wonder how much this whole fiasco affects the software industry.
14
bertan 2 hours ago 0 replies      
I wonder when will the government sites be blocked? sigh
3
Cuberite A FOSS Minecraft Server Implementation github.com
26 points by bearbin  1 hour ago   5 comments top 3
1
rocky1138 18 minutes ago 0 replies      
I made a video of this when it was in its infancy, back in January 2011. At this point, it was known as MCServer.

https://www.youtube.com/watch?v=lcUjqsz3FJI

2
hashmp 1 hour ago 2 replies      
This might be daft question but I'll ask it anyway, how were they able to do this? Is the official version opensource or did they have have to reverse engineer the whole thing?
3
ivanstame 22 minutes ago 0 replies      
what is happening, i saw couple of minecraft posts?
4
Manic Digger - A multiplayer block-building voxel game, Minecraft clone github.com
95 points by mynameislegion  8 hours ago   24 comments top 8
1
whatshisface 7 hours ago 3 replies      
If you like this, check out minetest too. (minetest.net)

Its got rendering improved over Mojang's Minecraft (with built-in shader support,) infinite world size in all directions (not just horizontally), and a very high-performance C++ implementation.

It also has a very well-supported and well documented mod API, and an active community. You should check it out.

2
exemd 3 hours ago 2 replies      
Hi.

Some info:

- Client is written in programming language and can be transcompiled to many languages. Yet it's still a C# project that runs in Visual Studio. See https://github.com/marioclone/Mario and http://smb.neocities.org/game.html for example how it works.

- Game is currently being made into a commercial product by a big company. It looks beautiful. There is a whole team working on it, including many artists.

3
emmelaich 6 hours ago 0 replies      
Note from the sf.net git repo:

Moved to https://github.com/manicdigger/manicdigger

Also, the author's web site: http://croxxx.tk/

4
bencollier49 6 hours ago 2 replies      
Out of interest, is Sourceforge any better under the new management?
5
willvarfar 6 hours ago 1 reply      
So this is written in c# and can be transcompiled to JavaScript... Is there any public servers that will host your world?

My daughters play minetest and love it. However, they each have an old reconditioned laptop, and their shared world is hosted on one of them, so that laptop has to be on and running minetest even if only the other wants to play and create.

A browser-based world would be so much easier.

6
exemd 2 hours ago 0 replies      
7
Razengan 6 hours ago 0 replies      
Ah that name, [hopefully] an homage to one of the first platformers ever:

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

8
em3rgent0rdr 6 hours ago 0 replies      
thanks for making public domain!
5
Converting atmospheric carbon dioxide into carbon nanotubes for use in batteries kurzweilai.net
93 points by yuhong  10 hours ago   44 comments top 7
1
narrator 10 hours ago 3 replies      
Let's not put asbestos like fibers in everything please: https://www.scientificamerican.com/article/carbon-nanotube-d...
2
redthrowaway 6 hours ago 1 reply      
Why would you use atmospheric carbon? It's incredibly energy-intensive to do so, and there are plenty of far saner sources available.
3
ianai 4 hours ago 3 replies      
If we ever do clean up the CO2 produced from consumption of oil the energy cost will be greater than the power gained from the initial consumption. I.e. Every watt of energy paid with oil must be paid with another form of energy plus interest.
4
corecoder 2 hours ago 1 reply      
How much CO2 does a square meter of this remove from the atmosphere compared to a square meter of the most efficient plants?
5
m_mueller 5 hours ago 1 reply      
How can this powerplant idea work? You get the binding energy from carbo hydrates, then you need to add back more thsn that energy to capture and convert all CO2 back to nanotubes and oxygen. The excess energy comes from solar? Fine, may make sense, but that's not going to be an electrical powerplant anymore. It's a battery factory.
6
sawes 10 hours ago 2 replies      
Carbon Nanotubes are the next "leaded gasoline"
7
kgc 7 hours ago 1 reply      
Do carbon nanotubes biodegrade?
6
Minetest A free, open-source voxel game engine and game minetest.net
70 points by mynameislegion  4 hours ago   14 comments top 5
1
dcposch 2 hours ago 0 replies      
This is pretty cool. Props for doing a massive amount of work and creating something open and extensible.

--

I just tried reading the code to learn how MineTest does voxel meshing, and it didn't go so well.

(Voxel meshing is about turning blocks into triangles efficiently, and it's surprisingly tricky. Mikola Lysenko wrote a great exposition of the problem and several solutions way back in 2012: https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/ )

I was curious which approach MineTest chose, and I still don't know. I think I found the files where the meshing happens, mapblock_mesh.h/cpp. The code quality is... less than perfect.

There are 200+ line C++ functions. There's commented out code and preprocessor "#if 0" ignored code.

There's a struct that looks important, but it's called "MeshMakeData", and I don't know what it represents. The comment above just says "Mesh making stuff":

https://github.com/minetest/minetest/blob/0a16e53b40d347db7d...

The file that seems to run everything, game.cpp, is almost 5000 lines long.

--

For an example of really clean game code, check out Quake or Doom 3. Both have:

* short and sweet main() methods

* comments that guide the reader and explain what does what

* clean decomposition

* short, readable functions, and...

* reasonably small files

So far, MineTest, at least in part, took the "big hairy ball of C++" approach.

Good luck with future development!

2
qwertyuiop924 3 hours ago 3 replies      
As a longtime MC user, I have to say this is really cool. OTOH, it doesn't have MC's amazing mod ecosystem, which is a huge part of why that game is so great.
3
giancarlostoro 3 hours ago 2 replies      
It's worth noting that Minetest is available on Ubuntu (and possibly Debian?) via apt (apt-get). Not sure how dated it may be, but it's still playable and useful.
4
qznc 3 hours ago 0 replies      
I made a few mods a while ago. Pleasurable experience even though I was new to Lua.
5
ghostDancer 1 hour ago 0 replies      
There's also a fork Voxelands http://www.voxelands.com/about.html
7
Ask HN: Those making over $1K/month on side projects, what did you make?
36 points by kashifzaidi1  1 hour ago   16 comments top 11
1
danschuller 10 minutes ago 0 replies      
I am but I don't know how long it will continue!

My side project is: "How to Make an RPG" (http://howtomakeanrpg.com/) which I released in June.

It's a collection of code samples, art and digital book that shows the reader how to make an old-school, Japanese-style RPG. So, it's super niche! I wrote a little about my process here:

https://medium.com/@DanSchuller/my-first-side-project-part-1...

There was supposed to be a second part to this article but I haven't written it yet.

It's been over $1000/month very comfortably so far but it is trending down. This isn't uncommon for this type of project - there's often a spike followed by a slow decline.

Still, for the last three months I haven't actively worked on it and it's still sold well. I've moved country and been finding a job (all sorted now), so I haven't had much free time.

I'm not really sure where is good to go after this project. For now I'm building on the base the book introduces, just for fun.

2
caser 6 minutes ago 1 reply      
I started Hacker Paradise as a side project in 2014, and now we're a full-time team of 3.

We organize trips around the world for developers, designers, and entrepreneurs who want to work remotely while traveling. People pay us to organize housing, accommodations, and community events wherever we go (past speakers have been CIO of Estonia in Tallin, Matz in Tokyo, etc.).

Happy; to answer questions about running more of an ops business that still is related to tech.

3
matthewmueller 4 minutes ago 0 replies      
https://standupjack.com is a side project I started earlier this year on my own. It's making more than $1k/mo now :-)
4
maxsavin 5 minutes ago 0 replies      
I created Meteor Toys, available at http://meteor.toys

It's been very good to me, but also trending down as people seem to be diversifying from Meteor. Certainly not what I expected when I got into it.

The story for it is a simple one: I solved some of the annoyances during development for myself with by making a devtool, and then open sourced it.

The reaction was very positive and encouraging. Between the opportunity to make more tools, and the downside of having to maintain them, I decided to create paid tier for the tools.

5
ginexybrown 1 minute ago 0 replies      
Can I get a hacker to hack my wife Facebook account ?,I think she is cheating on me and am troubles
6
suhastech 11 minutes ago 0 replies      
I started basically when I stumbled upon a problem myself. https://thehorcrux.com/why-i-built-horcrux-app/TL;DR: Google disabled my account. So, built an email backup app to not get into this situation again.

I started building the app 4 years ago. I put it on Hacker News and it blew up a tiny bit. That was enough to keep it going until now.

There is still a lot of work I can put into it marketing or coding wise. So far, it's been going well ($800ish). I recently rolled out a UI/UX improvement.

Its 4 year anniversary is in 2 days. :)

7
khuknows 12 minutes ago 0 replies      
I run https://uimovement.com/ and it makes just over $1,000 a month from sponsorships and ads most months.

The majority of that is from sponsorships for the weekly newsletter, which has almost 13,000 subscribers now. Currently doing cust dev and what not to see if there are income opportunities that don't involve ads.

8
swiftisthebest 18 minutes ago 1 reply      
Digital magazine company. I have thousands of subscribers that pay me $2 / month. I pay royalties to content providers. I work about 10 hours a month on the project.
9
streptomycin 11 minutes ago 1 reply      
https://basketball-gm.com/ is a basketball management sim video game (sorta like football manager), and it makes more than that from ads.
10
kyloren 43 minutes ago 1 reply      
I saw the previous post as well. I know how it feels having a good idea is not easy. Even people say talk to people and find pain points in their work is easier said than done.

I guess it's partly because we are used to these pain points for a long period of time we don't feel it as a pain point anymore or even though we have a good idea it's not easy to build it as we need lot of capital to do so.

Also even if we have a good idea monetizing is a whole new ball game altogether. Like the chrome extension I'm hacking together on weekends which allows people to search for restaurants around them. I have no idea how I can monetize it and just build it for the challenge of making it.

I think one option is to keep on making cool things. Do something challenging and keep pushing out new things whenever you can. And finally one will stick. I don't think it's easy but if one keep persistent in shipping new things definitely one will become a success.

Like in a similar post I have made like this in the past I remember one commenting, we as HN users believe that everything that we make should be like Airbnb or Uber due to the illusion of success in many startups. But that is not the case and it all comes down to being persistent and enjoying the journey along the way.

11
imaginenore 1 hour ago 1 reply      
I have a project making $200/month, 100% passively (I just renew the domain every couple of years). But I think it would be so dumb to just tell what it is here. Why would you invite more competition to your niche?
8
Inclusive Design Toolkit microsoft.com
39 points by sweetdreamerit  4 hours ago   39 comments top 15
1
Aldo_MX 3 hours ago 2 replies      
This is a document to increase awareness about accessibility and provide guidelines, yet the landing page fails to convey the intention of the document.

Accessibility is about lowering barriers to people and making things actually easier, not about making a message difficult to understand with marketing gibberish.

Why can't a landing page, especially one about accessibility, be concise and straight to the point?

2
kukx 3 hours ago 0 replies      
Inclusive Design Toolkit (https://www.microsoft.com/en-us/design/practice#toolkit) consists of a downloadable manual and activities. The manual is an overview of the inclusive design problem. The activities are more like a guideline to researching possible design solutions.

I didn't find there any ready to use design recipes.

3
sergiotapia 3 hours ago 1 reply      
The amount of doublespeak in this document is absolutely off the charts.

Disability equals Mismatched Human Interactions - really?

http://download.microsoft.com/download/B/0/D/B0D4BF87-09CE-4...

Why not just accept that some people have disabilities and it's everybody's responsibility to help these people out to the best of our abilities? It's the moral thing to do.

Why bend and squish words into different definitions?

4
blisse 4 hours ago 0 replies      
Title is not clear but this is Microsoft saying they are committed to designing for accessibility in mind. I believe they added a new section called the Inclusive Design Toolkit.

Linking to the PDFs or something would be a lot more straightforward than linking to their general design page.

The PDFs make some good points about how designing for accessibility has secondary, wider reaching impact.

It's nice to see at the very least that Microsoft cares enough to make this.

5
ungzd 2 hours ago 0 replies      
Microsoft says they're changed but still designs everything for office slavery. Even graphical style emphasises it. Looking at this page first thoughts are: suits, ringing phones, cold calls. They're designing hamster wheels. They sell their software to business executives, not users who will use it.
6
kbhn 3 hours ago 1 reply      
"Human beings have been at the center of design practices for a long time."

What does this sentence even mean? Who else would be at the center? Cats?

7
dqv 3 hours ago 0 replies      
Here I am again to complain about bad focus support. The biggest travesty is people pushing the diversity narrative without... being inclusive.

The page has javascript, so I know they can put in javascript that targets the keyboard and helps users know where the hell they are focused. The focus outlines on those damn buttons is way too non-obvious.

8
Kiro 4 hours ago 6 replies      
So... what is this?
9
0xFFC 4 hours ago 1 reply      
Despite using Windows regularly and doing my development on it, I have serious problem with Microsoft approach.They literally tried to ignore many people who uses low dpi right now. I know people are going to adopt better monitor in somewhere along the line. But whole world is not just silicone valley and as far as I can see in third world countries (which is where Microsoft rules) 99% uses very low DPI monitors for desktop and laptop. That's because for a long time manufacturers produced and sold low dpi monitor.

Changing your underlying technology ( as far as I know they adopted DirectWrite as replacements for ClearText) with out caring about your users experience (and ironically making it worse that what it was) does not mean anything other than ignoring and don't caring about your user base.

Font rendering in Windows 10 is ridiculous. It is in worst possible shape. (In UWP and modern app).At the other hand, Ubuntu, Fedora (with freetype tweak) font rendering is fabulous.

I hated that guy, Steve Ballmer. He didn't know basic rule of management. You as manager cannot force people to use something you want. You should provide them better experience overall.

I know there are some technical issues there about ClearText (which was not that good -far from freetype-, but much better than DirectWrite). We are talking about biggest and most successful software company in history of mankind. There is got to be better way than ignoring your userbase. I am sure they can provide better font rendering for UWP in low DPI monitors.

Let be honest nobody cared about windows modern apps before integrating them into Windows core itself. Right now every time i open settings app my eyes hurt.

P.S. I do realize most people in HN have high DPI monitor, but if you can just try to use UWP app in 14 inch monitor with 1366x768 resolution (which is more than common in third world countries), and compare it to ClearText.

P.S 2. this is not only for third world countries. As far as I know gamers tend to buy large screen but with 1080p resolution. I tested on it, font rendering on anything less than 200 DPI is fucking nightmare. And doesn't matter how much smoother UWPs animation's are. Or how much their design are cool. When text is ridiculously awful, it doesn't worth using.

www.sven.de/dpi

P.S 3 This is one of the saddest experience I had as SE. Microsoft knew they had desktop users locked in, and because of that they didn't care. Imagine a world which Microsoft had serious competitor in desktop/laptop OS space. I am sure they wouldn't dare to mess with user experience in such way. I am really happy with recent increase in Apple's iMac's and MacBook's.

10
gyvastis 3 hours ago 2 replies      
When did Microsoft became eligible to speak about design?
11
chris_wot 2 hours ago 0 replies      
When I eventually got to Microsoft's actual PDF that explains this I noticed two things:

1. The URL is http://download.microsoft.com/download/F/2/C/F2C19EC6-03E2-4...

Why the heck does everything at Microsoft have to involve URLs with GUIDs in it?

2. That PDF is one of the worst documents purportedly on design frameworks I've ever seen. It's not functional, or direct, the text is in a tiny font, there are pages that do nothing with no content.

Ironically in page 20 they specify a minimum size of 12 EP, yet the label on the side is like half this size! Wut?

12
izolate 3 hours ago 0 replies      
Judging from the fact that Windows 10 still uses icons from 1995, I am surprised to learn that Microsoft even has a design department.
13
grogenaut 3 hours ago 0 replies      
inclusive design page captures the back event via a redirect page.
14
andrewvijay 3 hours ago 1 reply      
That's quite a lot of reading to do in a landing page. Needs a tldr; section!
15
andriesm 3 hours ago 0 replies      
Oh no, the social justice warriors have invaded Microsoft!!!

(Double speak, meaningless sentences abound - that if you were to strip them from the article no meaning would be lost.)

9
Send Your Brain Back in Time nytimes.com
60 points by danielmorozoff  12 hours ago   16 comments top 6
1
bsder 4 hours ago 5 replies      
I hate these kinds of assumptions ...

"Theres a reason adults dont pick up Japanese or learn how to kite surf. Its ridiculously hard. In stark contrast, young people can learn the most difficult things relatively easily. Polynomials, Chinese, skateboarding no problem!"

Um, ask some teachers about how easy that is sometime. I'm sure you'd get an earful.

The biggest difference between adults and children is not neuroplasticity--the biggest difference is TIME.

Children can spend 4+ hours a day learning a language, playing guitar, drawing, etc. In one year, that's roughly 1,000 hours.

I would challenge you to find an adult who can commit 1,000 hours in a year into learning something completely new.

In addition, children have a much better reinforcement loop. A child who can say even a couple of words in a foreign language will get wonderful praise; an adult won't receive praise until he can practically get a PhD in the language. Musical instruments are similar--a child can bang out stuff and everybody thinks it's wonderful--one wrong note as an adult and everybody is a critic.

I suspect there is some neuroplasticity involved in language--certain sounds seem to be indistinguishable to non-native speakers after a certain age. However, I suspect that the neuroplasticity is dwarfed by simple time.

I see little value in futzing with drugging the brain until we normalize things like time.

2
CuriouslyC 8 hours ago 1 reply      
Valproate is unpleasant, and has a high incidence of side effects - I wouldn't be in a hurry to self-medicate to improve neuroplasticity.

The beneficial effects of Valproate are likely mediated by increases in VEGF, BDNF and GDNF. Cardiovascular exercise has also been shown to increase expression of all these genes. Exercise has also been linked to increased neurogenesis in the hippocampus and neocortex, and that has been backed up with demonstrations of improved memory and learning. It will also help you stay lean, make you feel better and extend your life somewhat.

If you read or watch TV/movies, just start doing it on a treadmill, elliptical or exercise bike at a leisurely pace, instead of sitting around. An hour or two a day of relaxing exercise really does make a world of difference.

3
YeGoblynQueenne 1 hour ago 1 reply      
Here's a nice double-bind: messing with your brain to become smarter when nobody knows exactly what the outcome will be, is a bad idea; yet, to understand this you need to not be dumb in the first place.
4
mdip 8 hours ago 0 replies      
This is interesting - I just posted a comment about being prescribed Depakote to handle Migraine (which has completely eliminated my bi-weekly attacks for the last two years).

I haven't paid particular attention to this kind of effect (and now that I know about it, I am certainly able to fall into placebo). Frankly, I haven't noticed any side effects from the medicine[0] other than a minor one of no longer enjoying the effects of alcohol -- though I was never a heavy drinker, I haven't drank at all since I started taking it because the relaxing, positive effects of a glass of wine are no longer present.

[0] I've stuck to a rule about side-effects for medicines like this. My wife reads them thoroughly and I explain anything "different" that I might be feeling when taking the drug and allow her to make the judgement call as to whether or not I need to call the doctor/pharmacist. Because these medicines have such a huge list of side-effects, I'd find myself expecting to get one or more of them so much that I'd manufacturer them in nocebo effect style.

5
olh 7 hours ago 0 replies      
After some reading [1] I found out that electrophilic ketones are better than valproic acid as histone deacetylase inhibitors. Maybe this is the source of the enhanced state-of-mind that people on a keto diet [2] report (me currently, reporting in).

1 - https://en.wikipedia.org/wiki/Histone_deacetylase_inhibitor#...

2 - https://en.wikipedia.org/wiki/Ketogenic_diet

6
peletiah 6 hours ago 2 replies      
Kitesurfing is ridiculously hard to learn? That's news to me, learned it last year at 35, was not THAT difficult.
10
Show HN: scraping phone balance data from my cell carrier TracFone github.com
11 points by ryanmjacobs  5 hours ago   2 comments top 2
1
dorianm 2 minutes ago 0 replies      
This is where it made me laugh:

> As a plus, now I can graph my family's phone usage.

> If I poll every few minutes, I can see exactly when people are watching videos, etc.

And interesting use of CasperJS for scraping.

2
timvdalen 1 hour ago 0 replies      
Wow, that's really scary!
11
Every Body Goes Haywire nplusonemag.com
78 points by benbreen  14 hours ago   30 comments top 13
1
mdip 12 hours ago 1 reply      
I'm pleased to say that I am a former Migraine sufferer.

I've had the condition since I was 17 years old, when the first one hit. It was such an intense pain that I begged my mom to take me to the emergency room -- certain my brain was bleeding since the pain included a number of other symptoms (blurry vision, dizziness, nausea and the like). They sent me home with 1000mg of acetaminophen and basically told my mom that I was probably faking or just had a bad headache. My experience with around two decades of dealing with this illness was that neither regular folks, nor doctors, take the condition terribly seriously. People call their headaches "Migraines" having no idea that there's a difference. There's drugs marketed for Migraine headaches that, in my experience, did very little and were targeted at people who get "bad headaches that htey call Migraine". The best description I could give of how it felt was "like the worst 'brain freeze' you've ever had but instead of ending after a few seconds, it goes on for a few days". But everyone seems to have slightly different symptoms and until reading this article, I wasn't even aware that it was possible to have Migraine without the associated headache (though I had heard about some of the other symptoms that I hadn't experienced myself).

For me, a typical Migraine was 3-days long, twice a month, with increasing frequency during the fall and spring months. I'd have the aura most of the time and the after-effects almost all of the time. I'd been employed, full time, during the entire time that I lived with Migraine and because of its frequency, I rarely--if ever--took time off (try explaining to a boss that you need the day off because you have "a headache"). I'd given a presentation to a room full of coworkers right in the middle of one -- my eyes watering the whole time from the pain. Most of the time, though, I'd figure out ways to function -- sunglasses, staying still, contrast down all the way on the monitor, fasting for the day with frequent trips to the restroom to vomit air.

If normal people don't take it seriously, doctors seemed to take it even less seriously. The first question they'd often ask is "did you miss work because of a headache?" Being too honest, I'd say "no" and they'd stop paying attention or prescribe an anti-inflammatory. A doctor who took me moderately seriously prescribed two different triptan-based drugs with the assurance that "my wife gets these -- when you have an aura, just take one and it'll all go away." The pain was dulled by a huge amount, but they came with enormous side-effects. I would experience an intense sort of "elation" shortly after taking the pill, followed by a depression after the pain was gone (I'm neither of these things, normally, except for a small bit of listlessness after the Migraine had subsided). The medical literature indicated mild variants of these symptoms but this was anything but minor to me. I ended up finding out, by accident, when mixing this medicine with another medicine that affects serotonin, that my body lacks a gene required for properly flushing this medicine out of my system. I was sent to the ER with ~103 degree fever, incredibly elevated blood pressure (I don't remember the number but I remember the look on the nurse's face when she took my blood pressure for the third time with the replaced cuff and got the same numbers), and was treated by staff who was sure I had taken some recreational drug and was having a bad reaction (they were shocked when the tox screen came back clean). It was probably serotonin shock according to a doctor I saw well after this visit, but the ER staff was convinced I had some sort of psychiatric episode or took a drug they couldn't screen for. Regardless, they told me to never take a triptan again.

This incident resulted in me seeing a new doctor who suggested I try a medicine given -- in the past -- to people with epilepsy (and now commonly prescribed for bipolar disorder) called Depokote. Ironically, it was not prescribed to handle Migraine, but rather whatever underlying problem caused my trip to the ER[0]. It was September, a month where I had gotten Migraines weekly every year since I was 17. After a month of taking the medicine I had no headaches. I did a quick google search and the usual web sites didn't say anything about Migraine relief, but a handful of forum posts from people who take the medication had been taking it to manage Migraine symptoms (a search of that medicine a few weeks ago yielded results indicating that the medicine is now prescribed for that purpose). These silly little pills that cost about a dollar for a month's supply are magic as far as I'm concerned. Generally, I hate drugs affect my brain, but I've had no side-effects (unless you consider eliminating Migraine a side-effect).

My apologies for the long comment, but since I know there are others out there who probably have gone through what I went through, I thought I'd share.

[0] Here's where it gets complicated. The ER couldn't figure out why I was sick, but a flush of fluids through my system resolved everything. I was diagnosed as having a psychiatric episode -- something I had never had in the past, nor since. I was also admitted on a US holiday, so staff wasn't so great. I was prescribed this medication on the assumption that I might need to be on a mood stabiliser, which was absurd to me, but these were doctors and I am not, so I listened blindly. I had the genetic test months later after my children had been given a similar test and theirs had indicated a problem with triptans and, sure enough, those were my genes.

2
cpncrunch 10 hours ago 3 replies      
I used to suffer from CFS, and my wife used to get almost weekly migraines. (We're now both symptom free). In both our cases, chronic stress seemed to be the cause.

From what I can see (having talked to many other patients and researched it for the last 16 years), the depression/migraine/CFS/fibromyalgia cluster of symptoms appears to be the brain's way of telling you to stop doing what you're doing, i.e. you should remove the stressors. That's not to say that all migraines are caused by stress, but it does seem that it is likely a significant factor for many people.

I dislike the notion perpetuated in this article that if your headaches or fatigue is psychosomatic (due to stress) then you're either "weak", or it's "all in your head" (i.e. imaginary). I'll admit I probably wouldn't be able to work in a stressful job in NY with only a few hours sleep a night -- like the author of this article was trying to do -- without suffering from some kind of stress-related illness. I don't think that makes me weak...it's simply that my brain won't let me work in an excessively stressful situation like that if it doesn't appear to be in my best interests (even if I really want to do it). The advantage is that my CFS prompted me to quit a boring job and create my own internet startup, doing something that nobody else in the world is doing (now I have about 20+ competitors).

3
bobzibub 11 hours ago 3 replies      
I appear to have them under control now. I have been on a Ketogentic (< 20g carbs) diet (mainly to lose weight) and lack of migraines is one of the pleasant side effects. I've had two since starting months ago but I may have had too many carbs those particular days. I'd have almost one a week if stressed. The last two were so mild that I didn't bother with my regular Advil.

Not saying others will have the same experience but Keto is one treatment for various neurologic issues. I certainly didn't have them as bad as the author or others here. But it may be an avenue to consider. It is nice to not fear the zigzags.

Best wishes to all sufferers of migrains.b

4
EricDeb 4 hours ago 0 replies      
I have occipital neuralgia (damage to nerves in the back of the head), and the nerves of the head/neck are common triggers of migraines. Fortunately I don't have headaches or migraines, just pain, but people who have both are profoundly miserable I can assure you as I'm in a lot of the Facebook groups. They are essentially disabled, and mostly bedridden with no end to their condition in site (most are young and it's not something you die from). Furthermore, there isn't a lot of sympathy from the outside world as most people don't really believe chronic pain or chronic headache is even possible. It would be nice if there was a test to show pain or confirm a headache to substantiate these horrible conditions.
5
legohead 6 hours ago 0 replies      
I grew up with migraines. Frequency ranged from once a week to once every few months, with the average being 1 or 2 a month. Mild ones left me sleeping near the toilet. Some were so bad I truly believed I would die, even though I would tell myself I've been through it before..

Then I moved to California (from Oklahoma), and I haven't had a migraine since. In OK I would also get these strange allergy attacks where my nose wouldn't stop running and my head would be stopped up for a day or two, to the point I couldn't concentrate enough to work. Those stopped after I moved as well.

The "allergy level" between the two states isn't significant. OK is a little higher, but not huge. So I think my issues may have been related to specific flora, although doctors never suggested anything like that. I think my favorite line from the blog is:

> Although migraine symptoms have been described since antiquity, doctors still struggle to understand their cause.

6
soulnothing 12 hours ago 1 reply      
I have migraines and epilepsy.

> I collapse under the side effects of my medication; my mom tolerates hers with grace and determination.

My body just will not tolerate medication. I'm not on any medication right now. But it was pretty much a guarentee I would get 90% of the side effects. My mom is the same way. In addition my liver is so thoroughly trashed from anti convulstants, that I need double of anything for it to have an effect.

This whole article really hits home except for:> TO THIS DAY, I GUARD A HIDDEN HOPE that I will receive a new diagnosis, one that clearly explains the severity of my symptoms.

I'm done trying, done with doctors visits new medications. I've been in hospitals since I was 2, it's time too enjoy life as much as I can and push forward. The bigger problem has been my friends, they constantly badger me to go get help.

There is one downside to this. I went to the ER a few weeks back. I have a rare migraine disorder (Hemiplegic [mimics a stroke]). The doctors said I was a hypocondriac, who was making up a migraine condition, and placed me under psych evaluation. Because I didn't have a history. Which was because all the medications made it worse.

> Chronic migraine creates all sorts of discomfort and anguish, but what has been hardest to bear is not knowing what this means for my future. I dont know how debilitated Ill be or who will take care of me or what Ill do about money.

We are given a set hand when we start life. You'll discard some, pick some up. But there are some cards you're stuck with. If you have something chronic, you may not be able to resolve it. If you do great, fantastic. Find small little tricks to get you by, and work with it.

Make the best of each day, do everything you can. Don't let it hold you back. I've found the hardest part is not on me. I feel practically discouraged, when I get a spike of pain, or become paralyzed. People rush me, because they care. But just let me be. Constantly being coddled makes me almost regret trying certain things. I feel really lucky now, to have a group of friends who are like. "Him yeah he's fine just seizing. He'll come too in about ten mintues."

We have so much to learn about neurology. I've bounced around diagnoses. The resolutions have been largely outside of western medicine. The biggest change came about five years ago. An acupuncturist had me take a genetic food allergy test . I had to pay out of pocket. But after cleaning up my diet, my migraines were cut in half. I get a cock eyed look from doctors, when I say my treatment is this natural thing, or dietary.

7
mitchellbryson 6 hours ago 2 replies      
The first time I got scared about my migraines and decided to do something was after my first silent migraine. Before this I had just had them about twice a year lasting roughly 3 days.

My silent migraine started with pins and needles in my tongue, speading slowly to the rest of my jaw and then finger tips. Then I lost sight in the parts of my vision where I was focused, it became grey and bright around the edges. I still had peripheral vision. The last symtpom was what I could only describe as temporary dyslexia. I was reading sentences aloud and skipping whole words or moving them from the start to the end. It sounded like gibberish but in my head it somewhow made sense.I started to panic until some frantic googling brought up these types of migraines. Which is when I instantly recognised all my symptoms as familiar but without the headache and light sensitivity seemed very alien and very scary.

8
SloopJon 5 hours ago 0 replies      
I know someone who lives with severe chronic migraines. She writes about her experience when she can on thedailyheadache.com. Similar to the author, she searches desperately for triggers, treatments, and even moved to a drier climate.

My sister-in-law gets debilitating multi-day migraines. She too searches desperately for triggers, and has a hard time with medicine.

I get cluster headaches for a couple of months every two years or so. Although they are extremely painful, it's infinitely easier to cope with an episodic affliction than chronic pain with no end in sight.

9
arjie 11 hours ago 0 replies      
I used to get migraines when I was a teenager. Full aura and the absolutely unbelievable throbbing headache. I have a vivid memory of once getting one from eating chocolates and having to sit in a dark room with no sound because practically anything would add to the throbbing.

For what it's worth, they just went away when I got older. Haven't had one in over a decade.

Tasted great, though, and I remember eating the variety (which I remember being called 'Praline Leaves' or something of the sort). Never found it again.

10
BobHermen 6 hours ago 0 replies      
My migraines occurred roughly twice a year for roughly 20 years. The symptoms have been sparkling lights in vision, effective blindness and incapacitating confusion lasting about eight hours. Extreme pain and vomiting only occur about half the time.

There is no connection to stress but most occurred when out in glaring sunlight. One happened when a kid flashed a laser pointer into my eyes from a distance. They maybe connected to lack of sleep.

I have not had any for about 2 years at which time I began taking Citalopram and 'Breo' for other conditions. It is hard to imagine how those two would make any difference but I post this in case someone finds it useful.

11
WhitneyLand 9 hours ago 1 reply      
Did amy of the excitement around magic mushrooms as a migraine treatment ever pan out?
12
hogrammer 12 hours ago 0 replies      
Also, see Oliver Sack's excellent book: http://www.oliversacks.com/books-by-oliver-sacks/migraine/
13
anondon 10 hours ago 2 replies      
Modern medicine works great as a framework to treat pretty much all diseases/conditions. But I feel alternative forms of medicine are not viewed as viable forms.

Anyone has experience with alternative forms of medicine (homeopathy,ayurveda) for migraines and other conditions?

12
San Jose: New law would make city first to allow tiny homes for homeless mercurynews.com
17 points by prostoalex  7 hours ago   4 comments top
1
hiou 44 minutes ago 1 reply      
> the former accountant ended up outdoors after a divorce and a brain tumor.

Sounds like our current resource allocation system here in the US is working great! Seems like a totally sensible reason for a human being to be forced to live without basic shelter. They obviously have no useful skills to provide society so let's just throw them away. What a time to be alive!

13
Why Many On-Demand Platforms Fail themacro.com
51 points by endswapper  14 hours ago   28 comments top 10
1
paulsutter 11 hours ago 4 replies      
On demand startups usually fail because customer acquisition cost is greater than lifetime value (CAC > LTV).

Retention is the most common driver. Even good virality can't overcome bad retention.

A rough advance estimate of retention is the "toothbrush test": do people use it as often as a toothbrush. Services used rarely are more likely to be forgotten by the next use. If they need to find you again on Google, your competitor can buy them with Adwords.

I saw a startup once for a mobile app to arrange funeral services. I had to chuckle because that may be the lowest possible score on the toothbrush test.

2
dilemma 13 hours ago 1 reply      
Can possibly add that these platforms fail because they're designed to be unprofitable. Their competitive advantage is that they don't need to make a profit, being supporter by venture capital. When that dries up, few seem able to re-wire their business logic, and re-model their organization to fit.

More than anything, what seems to be lacking is long-term vision for the platform as a business.

3
Animats 12 hours ago 1 reply      
The question is whether there are useful stops between Uber-like total control and a lead generation service.

Servicemaster operates in that space. Some workers are employees and others are franchisees who may have employees of their own. That works, and Servicemaster, after 85 years of operation, has a market cap of $4.5 billion. Not a get-rich-quick scheme, but a success. HomeJoy tried to compete with them, not too successfully.

Then there are the lead generation services. Plumbers have these; most of the ads in what's left of the Yellow Pages go to the same call center. They don't do much and they don't make much.

Operating somewhere between those points seems to be difficult. It's not clear yet if Uber makes it; they're still losing money, and eventually, the investment money stops flowing in and they have to cut costs. (Look at Twitter. Growth is not enough.)

4
cheriot 2 hours ago 0 replies      
This matches part of the description of HomeJoy's failure[1]. Home service are relationship based so a middle man is only Uber-like for the first cleaning. After that the cut has to be smaller or the customer and pro will deal directly. Even that doesn't quite capture the additional complexity in matching pros with customers. The work is more qualitative and the pro needs jobs that are more similar in location, expectation and needed supplies. Homejoy was too much like uber to work.

Yes, they ran out of cash because CAC > LTV, but that's a bit like saying an AIDs patient died of the flu. There's an underlying cause.

[1] https://backchannel.com/why-homejoy-failed-bb0ab39d901a

5
javiercr 2 hours ago 0 replies      
I really liked the view of the article. However it's assuming one thing that's not true for every on-demand or p2p service marketplace: the service provider is a "pro".

I'm co-founder of a p2p marketplace for dog sitters and dog owners and most of our sitters are not "pros" (as in people who do it just for money and full time).

IMHO that's the basic difference between a truly sharing economy platform and just an "on-demand service".

These two kind of companies tend to fall under the same umbrella, often because the ones that are just on-demand services use the "sharing economy" label to protect themselves against regulators.

6
davemel37 9 hours ago 0 replies      
I think a fundamental way to think about on demand is that the worker/service provider/driver is the real customer not the end user.

So, if you are uber and the only trust factors are solved by technology (i.e. where the driver is and how soon theyll get to you) it can create a new class of workers.

if you are in skilled home services, trust is built by the provider not the platform, so the only current value is lead generation for the worker...which doesnt require a platform.

The argument of this post is that there is an opportunity in home services for a platform to really cater to the service providers in a way that they always want to transact on the platform and thay they can use to manage and grow their steady customers...with on demand being the leadgen side of the platform.

7
dnautics 12 hours ago 1 reply      
I wonder why a company like homejoy doesn't become a flat cost subscription platform where they offer scheduling, organizational, and billing tools for the particular on demand service.
8
somedudetbh 9 hours ago 6 replies      
This is a pretty naive look at how services in this space work from someone who wants to build one.

Uber is fundamentally unlike all of these other "Uber for X" startups. First of all, @paulsutter made a great point: the CAC is > LTV. How many times in your life are you ever going to have to hire a...home decorator or something? A painter? The reason why Geico advertisements are on all media literally all the time (they have like five completely different mascot strategies!) is because you almost never make a choice about car insurance, and when you do, they need to be top-of-mind. This is the same problem that affects a huge swathe of terrible startup ideas, not just on-demand services: the whole category of travel management, niche social networks, event-oriented tools, and yes, most "Uber for X" products. It works for Geico because the LTV of a Geico customer is high enough, because Warren Buffet is an amazing capital allocator and amazing at identifying and retaining operational talent, so Geico runs at roughly break-even on the insurance product, but frees up a large chunk of float for BH to deploy and earn high returns. That business requires doing like 10,000 impossible things right and they do it. An app that lets you summon a guy who trims trees to your house the one time you realize you need a tree trimmed has none of these qualities.

A lot of comments here are about how 'the jury is still out on Uber' because it loses money. But cabs don't lose money, collectively. Uber's aggressive money-weaponization growth strategy is certainly high-risk, but there have been tons of businesses that direct requests-for-transit-via-car to independent contractors and clip a fee: virtually every taxi dispatch company, say (contractor vs. employee depends heavily on the history and regulatory structure in a given market). The idea of having for-hire cars distributed through the city and used on an on-demand basis is also profitable for zillions of people. The idea of adding on an app that summons the cars more efficiently, handles payment, and clips a fee is not that hard to believe in.

OP frames the issue about the lack of variance in quality of an uber ride vs...what? Hiring a plumber? Do any of us have the ability to identify a quality plumbing job vs. not quality? I mean, the toilet flushes now, or it doesn't. I think this is _close_ to the issue, but the issue is more about 'what adds value': being close to me right now, and able to get to me immediately, on a pre-determined price schedule trumps everything in ride-hailing most of the time (sometimes you want a limo, or something special, and maybe you won't use Uber. Maybe you want to hire a driver for a month while you are in India. You probably won't use Uber. Different parts of the value equation are changing value). Most of these on-demand apps operate in markets that don't have this quality. Other things are important.

The post also goes into the 'Trust' question. This is a classic trap for technology entrepreneurs, right up there with 'building tools that makes it easier for non-technical people to build apps'. So many zillions of dollars and hours of smart-people-work have gone down the drain building web of trust, chain of trust, and other trust management products, and they basically don't work at all. What works is "Does this thing have a lot of five-out-of-five star ratings from real-seeming people compared to how many one-out-of-five-star ratings it has?"

This is essentially 'word of mouth' online. The ratio of 5:1 star ratings over a threshold. This is basically how all real-world functional trust systems work: ebay, amazon, yelp, etc. Yes they have enormous problems. Yes they are really stupid. Yes they can be gamed. Yes it weights all sorts of idiots equally. But guess what? It works well enough for most people to make purchase decisions. Every fancy smart thing we've ever come up with that's more sophisticated than this is basically useless (e.g. the global tls cert web of trust, the various pkis, every product that builds a FOAF trust web underneath arbitrary objects).

Afaik, on-demand 'uber for x' products work one of two ways, mainly: - as a marketplace, where they fail because of all the normal chicken/egg problems, but basically because the ltv of a customer is very low and the cac is very high (once you run out of VC cash to subsidize the service to extremely low prices.) - as an ONO service with employees, where the unit economics supposedly become good with crazy scale, but it's extremely difficult to get there again when you run out of subsidy cash . The classic example here is Kozmo. I'm sure Kozmo's model predicted that eventually, when a delivery person was delivering a candy bar to five people in the same building, the unit economics turn the corner, but it consumes insane volumes of cash to get there, if there's even a 'there' (I'm not aware of any company who has ever gotten to this point. It is possible that Postmates will be the first, if they survive).

Postmates is an interesting play because unlike most of these on-demand services, there's at least a world in which like you could _imagine_ if there was a small but positive way to get the unit economics to work, the LTV outstrips CAC because people need to order food and stuff all the time. Many times a day possibly. Even if Postmates made a penny/order on each active user, you could have a very high order volume over a very long time that would eventually get over the CAC cost. BUT the idea of the unit economics getting there is...hard to see. I have a friend who orders coffee from postmates _every morning_ instead of making it or going out. He just has a postmate drive up the hill to his house from starbucks. Starbucks! It's not even like a fancy coffee place. It's interesting to think about a world in which that postmate is running like, a hundred starbucks orders on an optimized loop, and they're still able to charge $5 or whatever for the delivery. That starts to look _possible_ but insane. As it is, it's twenty minutes up the hill, twenty minutes down, never mind the starbucks time.

The other world of on-demand stuff I think is interesting to think about is grocery delivery because I think grocery delivery is basically doing something different than what it thinks its doing: the on-demand delivery aspect of it is a vehicle for grocery price discrimination.

It's an old joke that rich people don't know how much food costs: George Bush Senior at the checkout counter, Lucille Bluth saying, "it's one banana, michael, what could it cost? Ten dollars?" That 30 rock episode where Jack Donaghy says something about the "grocery concierge" telling you a sack of potatoes is four hundred dollars.

But groceries remain an insanely low margin business. Grocery chains operate at around 2-3% margin. Independent grocery resellers in immigrant neighborhoods are even tighter. Costco's grocery business is run near break-even (they make money on the membership fees. This is also why, long run, Amazon's non-AWS business best comp is Costco.)

I've shopped for groceries on amazon pantry. Sometimes I'll type something in like "soy sauce" or "rice". Is that a good price? I sometimes literally don't know if its 2x the normal price or .5x. There are things I know the price of well: avocados, milk, liquor, coffee. But there are tons of things I don't know, and i've been buying these staples for years!

Grocery stores have very little power to raise prices, but if they could segment the market to provide a service like delivery to a price-insensitive consumer that allows them to charge 20-30% more for certain staples, the excess margin in the groceries completely dominates the cost of the delivery business.

This is the Instacart strategy. It's very interesting. A lot of the unit economics problems of these businesses go away if you just...make things expensive. What if coffee was $30? Sure, postmates would work fine, if anyone would pay. But groceries have larger tickets where a 20-30% increase in price might not be objected to by wealthier price-insensitive consumers. Instacart basically is selling coffee for $30.

I'm very curious to see if this works. I mean, it seems insane, but less insane than say HomeJoy, Rinse, Washio, Homee, Handy, the 'uber for kids', Lugg (this has gotta be the worst idea of the bunch), the one that parks your car, the one that washes your car, the one that fills your car up with gas, the (multiple!) ones for private jets, the massage one, etc.

9
programminggeek 10 hours ago 0 replies      
Most businesses that are one-off type businesses tend not to work well. Uber works well because you will use it often enough and is basically a similar model to other transportation services like Bus and Train transit.

A lot of businesses require subscription or other predictable recurring revenue to truly work. Even golf courses, bowling alleys, heating and air repair companies, bug terminators, advertising, etc. tend to rely on recurring revenue as the major source of revenue.

Even restaurants and bars rely on recurring revenue. You show me a restaurant or bar without regulars and I'll show you a restaurant or bar about to go out of business.

10
vonklaus 10 hours ago 0 replies      
I think this is done poorly and misses the biggest issues on demand startups face.

The largest issue is failing to understand the difference between a commodity and a service, and how easy a substitute is to find.

Others vs uber(and uber like companies) are different

Uber solves an extremely hard problem that looks easy, it also has very few alternatives. The other services solve a problem that is less urgent, had many substitutes and is largely less valuable.

Uber provides transportation when and where it is needed. If you simply need (using the most well known detivative business) to borrow a skill saw from your neighbor for a tool sharing site you have many options. This project may be planned in advance, you may be able to purchase a used tool, and you may be able to borrow kne free.

The issue is how variable a service is. Uber can generate transportation for where and when you need it. However it may appear that the commodity is transportation, but that is the variable. Finding a user and providing them transportation from an unknown location, to an unknown location, immeadiately is hard. A ride from Logan Airport to south station is much different than a rake/hammer.

Each ride has a large amount of logistical constraints. Out toolsharing example has to solve all the same problems except a tool is always the same tool. A ride is never the same ride. It makes it much less valuable, and much easier to compete as there are often many substitutes and less expediency. Therefore coverage & on demand has a sup/demand musmatch, is prohibitively expensive and can only take a very small slice if value.

14
Libreboot A free BIOS or UEFI replacement libreboot.org
145 points by zerognowl  14 hours ago   56 comments top 10
1
dschuetz 4 hours ago 2 replies      
While I agree that most BIOS and/or UEFI installations are just... unacceptable, I don't think that a replacement will do just fine. The initialisation process should be as streamlined as possible, but allow as much control as possible. I would not call a multi-staged boot process "streamlined", when you argue that coreboot is the fastest way to boot up a computer. And then again, the whole process is repeated by the operating system one way or another. Anyways, I'm glad that coreboot exists regarding the UEFI fuckups in the recent past, but I don't think it's the way to go further.

Oh, and, the free in libreBoot is just cosmetics, so I shrug, whatever.

2
akerro 4 hours ago 1 reply      
After the latest drama I think libreboot is driven be oversensitive and irresponsible developer. Prove me wrong?
3
jimjimjim 9 hours ago 1 reply      
for a long time i thought the name of the project was libReboot. libreBoot does make more sense though.
4
aq3cn 5 hours ago 4 replies      
I was reading about buying a laptop with libreboot bootloader but then I saw a whole section to screw paywall.

https://minifree.org/product/libreboot-t400/

https://minifree.org/paypal/

Their laptops are cheap and with good configuration except for CPU and graphics card. I will have hard time running Matlab on such a machine, so I cannot make that investment. Better CPU please especially when your laptop is 2.2 kg in weight.

5
lighttower 10 hours ago 1 reply      
Changing the BIOS on, say a late model Thinkpad would be difficult. Doesn't the update utility verify the signatures before flashing?
6
onde2rock 11 hours ago 1 reply      
Hum, so any recent news on the libreboot project ?
7
snvzz 9 hours ago 1 reply      
Isn't libreboot just coreboot minus blobs?

I don't get why it is in any way remarkable.

8
finchisko 3 hours ago 0 replies      
I would probably be excited about lib(reboot), when the number of supported mainboard would be higher than 5. Now I'm just not.
9
geofft 11 hours ago 3 replies      
If I want to hack on Libreboot on a separate machine from my primary one, what's a good laptop to get? Are there laptops that are close to working but not on the HCL yet?
10
vog 5 hours ago 0 replies      
The submission title should be corrected from BiOS to BIOS.
15
GitKraken Pricing Clarification axosoft.com
6 points by petepete  48 minutes ago   2 comments top
1
cyberferret 22 minutes ago 1 reply      
I downloaded and signed up for Git Kraken about a year ago. Good tool, that I use from time to time alongside the command line for Git. I especially like their branch visualisation.

I am a little concerned though, because I thought that I had a 'free for life' licence as per their original promotional campaign. Does this now mean that future upgrades will remove functionality or lock down the software if I don't upgrade to the Pro version? I am a one man software house (so I fit the first requirement for an 'always free version') but I have been in business for over 2 decades now, which negates the second part.

If this is the case, then I have other choice but to move back to SourceTree for a free GUI client for Git. I am not that tied to Git Kraken that it precludes me from moving back to pure command line or SourceTree. There is also no 'lock in' for software that is basically a wrapper around a command line system that doesn't really add anything extra to the functionality.

16
HTML Kong xn--8ws00zhy3a.com
176 points by spicytunacone  16 hours ago   24 comments top 5
1
paulirish 15 hours ago 2 replies      
The game logic is held within the CSS, which has a rather beautiful obfuscation/formatting applied: http://kong.xn--8ws00zhy3a.com/kong.css
2
gus_massa 15 hours ago 3 replies      
I think I played this IRL.

It would be nice to be able to use the keyboard to play, clicking the screen with the mouse is too difficult (I don't have a touchscreen.)

3
gbog 12 hours ago 3 replies      
Side note for hn devs, this url is in Chinese characters but appears as garbage in hn site.
4
eriknstr 6 hours ago 1 reply      
At first I thought it didn't work for me neither in Firefox 49.0 nor Chromium 51.0 on Fedora 23.

One has to first press one of the "GAME A" or "GAME B" buttons, and then press the "JUMP" button.

5
bobajeff 14 hours ago 1 reply      
It works on my phone (in Chrome for Android) too!
17
Image unshredder by simulated annealing (2015) nayuki.io
237 points by nayuki  20 hours ago   53 comments top 17
1
foob 15 hours ago 4 replies      
This is a fun demo but, as others have mentioned, simulated annealing really isn't necessary, or even that appropriate, for this specific problem. I threw together the same demo with a very trivial algorithm that I think does a more accurate job of reconstructing the same images in significantly less time than the simulated annealing [1]. The algorithm consists of first finding the closest matching pair of pixels as a seed. It then finds the remaining column that most closely matches one of the current edges and adds it to the reconstructed columns. This then repeats until there are no remaining columns.

On a different note, if this quote:

> The unscrambling problem being solved here is much harder than a typical unscrambling problem, because we are rearranging single columns of pixels.

is referring to reconstructing shredded strips of paper then it is laughably false. The single columns of pixels are extremely clean and correspond very, very closely to their neighboring columns. In reality, the tearing of the paper makes the edges not match very well and it's just much noisier in general. I've worked on this problem before and it's many orders of magnitude more challenging than the reconstruction that is done in this demo.

[1] http://sangaline.com/blog/image_unshredder/

2
08-15 12 hours ago 0 replies      
It doesn't work, plain and simple.

Never mind what many others have said, that a greedy algorithm might work, that you can reduce it to TSP and apply heuristics, etc. The application of simulated annealing is also crippled: Suppose you reconstructed two slices of the image. To improve it, you have to take a column from one slice and move it to the other---but that doesn't lower the energy! What would lower the energy is to take one of the slices and attach it to the other, possibly flipping it in the process. So while it says "simulated annealing" on the lid, it's a random walk for the most part.

The idea is workable, but it needs a different primitive operation: pick a range of columns, attach it in a different spot, possibly flipping it.

3
jcoffland 18 hours ago 2 replies      
You could improve this greatly by adding another type of change to the annealing function. Instead of just swapping columns sometimes (I.e. at random) it should evaluate flips. A flip is performed by choosing two columns at random and then reversing the order of all the columns between them. Annealing algorithms in general benefit from a diverse set of change functions.
4
danbruc 18 hours ago 2 replies      
Why simulated annealing? Wouldn't it be much more efficient to just compare all pairs of columns and then sort them cording to similarity? That would take a 360,000 comparisons instead of about a billion iterations for an image 600 pixels width.
5
retreatguru 18 hours ago 1 reply      
It looks like it might work best as a two step process. first pass to connect the major chunks, then find the edges and anneal those chunks.
6
pablobaz 18 hours ago 1 reply      
I'd be interested to see how a Genetic algorithm with carefully chosen mutation/recombination operators would suit this problem.

Mutations could be flips and random swaps. Recombination would be combining chunks of already partially optimised solutions (breeding).

Genetic algorithms do suffer a cost of having to keep a population of solutions in memory so it would be interesting to see how the end results compares in performance to annealing.

7
wwwtyro 19 hours ago 1 reply      
Would like to see this applied to a page of text.
8
Luc 14 hours ago 1 reply      
Some real world unshredding by Fraunhofer Institue:

http://www.ipk.fraunhofer.de/fileadmin/user_upload/IPK_FHG/p...

Shredded secret service files, fragments of papyri or frescos...

9
bragh 5 hours ago 0 replies      
IIRC, the best thing to do was to apply clustering to the rows/columns (k-means and hierarchical both worked, but I think it was hard to find the appropriate tree height for hierarchical clustering) and then to apply seriation: http://innar.com/Liiv_Seriation.pdf
10
ttul 17 hours ago 0 replies      
Simulated annealing is super cool. Back at the dawn of time, my colleague and I used this technique to place and route transistors for a project in our VLSI course. It was the most fun.
11
45h34jh53k4j 11 hours ago 0 replies      
Thank you for the demo. This helped me understand the recent quantum computing (quantum annealing) process a little more concretely.

What I saw here was a scrambled image being sorted to find a local minima of entropy in pixel color value between respective stripes. A quantum annealing computer is doing is, where the image is the problem space (scrambled because we dont have the solution), and the quantum computer rearranges this to find global minima/maxima.

Where a QC is not useful would be when the problem space is too big (image too big), or it can only find a local minima that isn't the solution to the classical problem (picture is still objectively after annealing)

please comment someone if my understanding is wrong

12
sam4ritan 18 hours ago 2 replies      
there are still a lot of destroyed documents being stored around the world (say, from the StaSi for example).I would love to see this applied on them. It migjt shed some light on things supposedly lost to history.
13
catscratch 18 hours ago 2 replies      
Didn't work for me either time I tried.
14
nayuki 18 hours ago 0 replies      
> The unscrambling problem being solved here is much harder than a typical unscrambling problem, because we are rearranging single columns of pixels. As a consequence of this design, it is impossible to resolve the horizontal reflection symmetry ambiguity every image has exactly the same energy score as its mirror image.

> In a more typical problem, the image would be sliced into groups of columns, where each group moves as a unit. This situation would reduce the number of pieces to unscramble, and also make the arrangement be unambiguous to horizontal flips.

15
code_sardaukar 14 hours ago 0 replies      
Awesome, but please put the original energy somewhere. It's not clear whether the final configuration actually has a lower or higher energy that the original image, which would be interesting to know.
16
yincrash 13 hours ago 1 reply      
Is there a definition of temperature that someone can share that would be relevant in this context?
17
Beltiras 17 hours ago 0 replies      
Couldn't you do some feature detection on the edges of the resulting columns and repeat the annealing to get a better end-product?
18
Man Posing as Delivery Person Hides Resumes in a Box of Donuts abc7ny.com
134 points by cft  10 hours ago   86 comments top 14
1
scottbcovert 8 hours ago 0 replies      
I actually met Lukas a few days ago, very nice guy. I was in San Francisco for Salesforce's Dreamforce conference and was staying at a shared AirBnB where he was my roommate for the week.

One night there was a party hosted by Salesforce that I thought Lukas was planning on attending so when I noticed it seemed like he was turning in soon I asked him what changed his mind; he told me he had an interview in the morning with ABC. Not knowing his situation I assumed it was for his startup so I told him congratulations and asked what kind of work his company did. He saw I was confused by his answer that he was actually looking for a job so he just showed me a clip from Good Morning America that talked about the story and said it was probably easier to understand if I just watched the video.

I have a feeling I'll be seeing him again next year--leading a session on marketing at the conference.

2
ryandrake 9 hours ago 3 replies      
File this under "more evidence that hiring is broken". It's just so silly that companies set up elaborate HR departments and job postings and internal recruiters that collect resumes, and then when you look at how they actually hire it's through popularity/celebrity, friends of friends, and stunts like this.
3
holografix 7 hours ago 8 replies      
This is a brilliant insight into how little I understand the world.

If I was applying to the same company I'd be VERY upset this guy gets an interview.

If I was the person he got delivered the donuts I'd curse him out of the office and tell him to apply like everybody else.

What makes him special or give him the right to basically break the rules and disrespect everyone who tries their best to get through the recruiting door? What would happen if everyone acted the same and started stalking execs and managers trying to "serve" them whimsical resums?

Clearly I'm the one who's strange since everyone else thinks it's great... maybe it's a cultural thing?

4
rmason 9 hours ago 5 replies      
Guy's probably here on a tourist visa and won't be able to convert even if he receives an offer.

He needs to be starting a company. Philippe Kahn started Borland while he was illegal alien. He got to a $500 million run rate without venture capital! It was only when Borland was going public that he was able to obtain a green card!

http://articles.latimes.com/print/1992-02-23/business/fi-511...

5
lloyddobbler 8 hours ago 1 reply      
My start in marketing was as a professional actor - where you spend 98% of your time doing marketing. If you do that well, you get to go to an audition. If you do that well, you get to go do your real job and get paid. (Eventually I moved into the tech world.)

Funny thing - this technique is as old as Hollywood. I've heard of tons of similar stories over the years. Heck, Stephen Furst (Flounder from Animal House) got his role when the producer saw his headshot in a pizza box.

https://en.wikipedia.org/wiki/Stephen_Furst#As_actor

6
mherdeg 9 hours ago 2 replies      
This sounds like pretty high-quality penetration testing; maybe he should pivot his career and work in security.
7
lucaspiller 8 hours ago 0 replies      
Just in case anyone is wondering about the startup in Lithuania, it's a car sharing scheme called CityBee:

http://www.citybee.lt/en/

I've used various schemes around the world, but this has the best selection of cars and is the fastest growing. They now have over 500 cars, which given the size of Lithuania is crazy. Their emails have a real personal feel which is no doubt down to Lukas work!

8
tracker1 9 hours ago 0 replies      
This is fairly brilliant for a marketing guy. What it comes down to, is he got the attention of the people he was trying to reach. In the end, it's like the guys that do very targeted advertising on LinkedIn and Facebook for similar goals. If you can reach the selective audience you are trying to for the job, in creative ways, odds are you can reach that company's audience as well.
9
nchelluri 9 hours ago 2 replies      
I would never be brave enough to try something like this.
10
erdevs 6 hours ago 0 replies      
Gimmicks make for very poor hiring filters, though they make for great article clicks.
11
dev_by_force 9 hours ago 0 replies      
This been done on advertising field by interns since ages... come on.
12
dammitcoetzee 7 hours ago 0 replies      
Huh. If this works I should be way more aggressive about finding a ME/EE oriented product design engineer job in SF.
13
Waterluvian 8 hours ago 0 replies      
That "Hi" after the headline just sucked all of the momentum out of it for me.
14
tdburn 10 hours ago 2 replies      
Can't tell of this is an onion article or real life
20
John Cages Gift to Us nybooks.com
38 points by tintinnabula  15 hours ago   9 comments top 4
1
ThinkingGuy 10 hours ago 2 replies      
From what I gather, the intent of a lot of Cage's work was that the listener take a few minutes to observe and contemplate the sounds, natural or man-made, being created spontaneously in their surroundings at that particular moment and place, rather than just consuming a series of precomposed, pre-programmed notes.

Given the increase in the average pace of life since Cage's time, and the increase in the number and variety of distractions and intertainment accessible to modern humans in the developed world, it would seem that opportunities to "detach" in a socially acceptable way are becoming more and more scarce, and thus more and more valuable.

Was John Cage just ahead of his time?

2
andybak 2 hours ago 0 replies      
In case anyone is turned off by the more experimental and non-musical aspects of Cage I'd like to point out he wrote some very pretty proto-minimalism also:

https://www.youtube.com/watch?v=I2wtmQkvX7A

3
ciconia 6 hours ago 0 replies      
The Github Audio [0] posting from a few days ago immediately made me think of John Cage. I think he'd have a ball knowing that so much of today's music is algorithmically generated, either based on "user taste" as in smart playlists, or "aleatoric" sources (which Cage called "chance operations") like github events.

[0] https://news.ycombinator.com/item?id=12635247

4
zer0defex 10 hours ago 1 reply      
Was hoping this was referring to Johnny Cage of Mortal Kombat fame. Left disappointed.
21
Ask HN: Any recommendations on resources for learning one algorithm a day?
153 points by alphanumeric0  14 hours ago   27 comments top 22
1
ChoHag 1 hour ago 1 reply      
I suggest a dose of reality:

You can't. You may be able to consume the knowledge underpinning an algorithm and parrot it back but any attempt to learn it in one day is doomed to failure. Parrot knowledge has zero retention.

2
gaus 11 hours ago 1 reply      
This is a good resource we used in a university course I took on algorithm design and analysis...

http://jeffe.cs.illinois.edu/teaching/algorithms/

I would probably recommend studying individual classes of algorithms, and to only move on when you feel ready, as opposed to learning algorithms in ascending difficulty (at the risk of learning them in a haphazard fashion).

VisuAlgo is another cool site that has lots of algorithm visualizations...http://visualgo.net

And, if you can handle the dude's voice, I recommend checking out Xoax.net's algorithm videos...http://xoax.net/comp_sci/crs/algorithms/index.php

What you will probably find is that it's more valuable to gain experience designing your own algorithms using tried-and-true techniques such as dynamic programming, greediness, divide-and-conqur, linear programming, etc. Also keep in mind that data structures are closely linked to algorithms, and vice versa. If you are not familiar with big-O notation I suggest you begin there as it can be used as a measure of both an algorithm's time complexity and its data complexity.

3
amberj 1 hour ago 0 replies      
I would recommend "The New Turing Omnibus" book by A.K. Dewdney:http://amzn.to/2dGetic

Jeff Atwood aka CodingHorror (of Stackoverflow and Discourse fame) recommended this book strongly in this post titled "Practicing the Fundamentals: The New Turing Omnibus": https://blog.codinghorror.com/practicing-the-fundamentals-th...

4
ClayFerguson 7 hours ago 0 replies      
Taking up a new algorithm each day is the best way I can think of to be sure you don't know any algorithms well. Learn what the various algorithms are, what problems they solve, and what the general classifications of them are, then move on. You are then empowered to dig deeper into the correct one once you have the actual need for one, you know if it exists or not, and how to begin.
5
LeonardA-L 11 hours ago 0 replies      
Last year was Advent of Code ( http://adventofcode.com/ ) and while they did not name them, each exercise was based on a known algorithmic problem (knapsack, traveling salesman, ...), and it was a fun way to engage people in a "1 exercise a day" pattern.

I guess you can also try your hand at CodinGame's puzzles ( https://www.codingame.com/training ) as they also involve known algorithms and they are realy fun to play.

But ultimately, both of these resources won't teach you how to implement algorithms.

6
leventov 2 hours ago 0 replies      
https://github.com/e-maxx-eng/e-maxx-eng

Pretty much in the beginning of translation to English, but the original resource in Russian is a trove of information on algorithms. Suits well for the "one also a day" learning format.

7
infodroid 1 hour ago 0 replies      
I found a relevant app Algorithms: Explained & Animated [1] that was posted as a new HN story [2].

[1] http://algorithm.wiki/[2] https://news.ycombinator.com/item?id=12670674

8
keeperofdakeys 12 hours ago 1 reply      
You might try The Algorithm Design Manual, the second half of the book is a giant index of algorithms. The first part is a guide on what algorithms you should pick depending on what you're doing.
9
simonhorlick 9 hours ago 0 replies      
Just read The Art Of Computer Programming by Knuth very slowly. There's basically a different algorithm every other page. Of course, it will still take you years.
10
gravypod 9 hours ago 0 replies      
I'd say you'd be far better off deriving your own algorithm every day.

Make something to solve a real problem every day of your life and you'll be far better at solving problems then other people. I'd rather be able to do that then just parrot back sorts, graph traversals, and what not.

11
kalimatas 2 hours ago 0 replies      
http://www.geeksforgeeks.org/ has a collection of algorithms and puzzles split by topics.
12
mindviews 10 hours ago 2 replies      
https://projecteuler.net/ is an excellent tool for developing algorithmic thinking. From the project description:

The problems range in difficulty and for many the experience is inductive chain learning. That is, by solving one problem it will expose you to a new concept that allows you to undertake a previously inaccessible problem. So the determined participant will slowly but surely work his/her way through every problem.

14
fsloth 5 hours ago 0 replies      
If you want to learn an algorithm I suggest implementing it as well. Since this question does not state any prerequisites I can only suggest the hands down best practical datastructure and algorithm study and reference book I've come accross: http://infolab.stanford.edu/~ullman/focs.html

It's old but concise and very much to the point. All of the material is highly practical.

15
haffi112 2 hours ago 0 replies      
16
bsznjyewgd 10 hours ago 0 replies      
You might be interested in Programming Praxis https://programmingpraxis.com/, a blog that posts a few exercises per week, with solutions. Some of them are more interesting, some of them less so.
17
0xCMP 10 hours ago 0 replies      
https://www.interviewcake.com/ is a great site. Eventually you need to pay, but he send out a question almost every day you can try out.
18
ilaksh 11 hours ago 0 replies      
One algorithm a day -- the short answer is if you were going to really learn them and not just forget them then you would have to cheat and constantly review previously 'learned' algorithms as you go. Otherwise you will learn X algorithms and likely forget nearly X algorithms.

I have to question the value of only focusing on learning algorithms and on the idea of optimizing the quantity.

In terms of learning lots of them, it might be more useful to focus on learning more fundamental algorithms _better_ rather than tons of them. Or you might want to carefully select the most generally useful algorithms or ones in a specific field relevant to current projects.

Also, now that we have such powerful general purpose languages and efficient module versioning and distribution, learning to take advantage of those probably has more practical use.

For example, you could spend several weeks or years learning various statistical methods and algorithms for machine learning in a particular area. But then you realize that all of the algorithms are already implemented in python code libraries so you start learning how to apply the libraries in real code for applications rather than reimplementing the libraries.

But then you find out that deep learning techniques far outperform all of those algorithms you learned to implement and then apply via those libraries.

So then you train yourself on sophisticated deep learning techniques and start to implement LSTM in python. Then you realize you never quite got the fundamental understanding of neural networks so go back to work on learning that better.

Then you implement some core neural network algorithms in python and start to build back up to your LSTM implementation. Now you find out that TensorFlow exists but lacks good support for AMD which your university has (perhaps erroneously) made a large investment in.

So then you decide the best thing to do would actually be to try to fix some basic bugs that occur on your platform with the latest TensorFlow/OpenCl/AMD code (or whatever).

You manage to fix one of the minor issues and now several geniuses have their day improved by a bit or two.

The point is, trying to learn a ton of random algorithms in a short period probably isn't the best use of your time.

20
Gammarays 10 hours ago 0 replies      
We've been working on a project with a small community of developers that helps rank various tools and recommendations:

http://www.differable.com/technical-interview-preparation-an...

Would love to hear if this is helpful to you.

21
jefflombardjr 13 hours ago 0 replies      
https://www.hackerrank.com/ Has an algorithm section, might be worth a look!
22
alexisnorman 11 hours ago 0 replies      
Highly recommend Grokking Algorithms for beginners and refreshes.
22
A Javascript journey with only six characters jazcash.com
506 points by Jazcash  1 day ago   103 comments top 22
1
qwertyuiop924 1 day ago 3 replies      
I'm a fan of Javascript. It has proper lambdas, true lexical scope, will soon have TCO, and is a really flexable language.

But it's not without its warts, and this is one of the worst. Although it's sometimes fun to mess with, nonetheless.

To see this taken to one of its logical extremes, check out If Hemmingway Wrote Javascript's entry for Douglas Adams:

 // Here I am, brain the size of a planet, and they ask me to write JavaScript... function kevinTheNumberMentioner(_){ l=[] /* mostly harmless --> */ with(l) { // sorry about all this, my babel fish has a headache today... for (ll=!+[]+!![];ll<_+(+!![]);ll++) { lll=+!![]; while(ll%++lll); // I've got this terrible pain in all the semicolons down my right hand side (ll==lll)&&push(ll); } forEach(alert); } // you're really not going to like this... return [!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]]; }

2
pvdebbe 5 minutes ago 0 replies      
I sighed with relief that the characters were not emoji.
3
madflame991 1 day ago 1 reply      
The title is incorrect; you need "!" and the only reason why I clicked on the article was that doing it without "!" would be a BIG deal. The title of the original article is "A Javascript journey with only six characters" and the topic has been posted/reposted and explained more times than I can count on HN
5
shp0ngle 22 hours ago 2 replies      
Why do I feel like I have read this article a few years ago? I remember it, but it has 2016...
6
Centime 21 hours ago 0 replies      
Without parenthesis (requires 8 characters though):

http://centime.org/jsfsck/

7
joshschreuder 7 hours ago 0 replies      
I saw a similar video recently called Code Without Keywords which was quite interesting.

https://www.youtube.com/watch?v=LG-ozmTnhdI

8
JelteF 22 hours ago 2 replies      
The article does not explain how it gets the {}, which is used to get the Object constructor string. Other than that it's very clear.
9
novaleaf 21 hours ago 4 replies      
Does anyone know a good sandboxing technology to execute user written javascript in a safe way? (like, on other user machines or on the server)? I have some ideas like "learn programming" that would benefit from this immensely.
10
CiPHPerCoder 11 hours ago 1 reply      
> Javascript is a weird and wondeful language that lets us write some crazy code

Wondeful! A typo six words in.

11
sjclemmy 20 hours ago 0 replies      
This is quite timely. I was looking at a library the other day which had IIFEs preceded by '+'. I wondered what the purpose was. Now I know!
12
lell 1 day ago 0 replies      
Reminds me a bit of the quest for alphanumeric shell code.
13
fibo 20 hours ago 0 replies      
Wow, JavaScript is also an esoteric Language.

I remember similar strange and interesting stuff in Perl, like the spaceship operator.

14
tempodox 1 day ago 3 replies      
This is an extreme demonstration of the validity of a delightfully snarky blog post by Robert Harper on how dynamic typing is actually static typing using a unitype:

https://existentialtype.wordpress.com/2011/03/19/dynamic-lan...

A string is a Boolean is a number is a function, and braindead conversions can happen without anyone noticing. How does one keep their sanity using a language like that?

15
keyle 1 day ago 0 replies      
I knew about these languages but I've never understood how they were made. This is a fun, fantastic article! These articles make me excited about technology. Even bad ones.
16
amelius 1 day ago 0 replies      
I'm getting a browser security warning on the url on Android.
17
a_c 20 hours ago 3 replies      
I don't see the point of a programming language allowing itself braining fucking its users(developer) for serious use
18
thanatropism 23 hours ago 9 replies      
19
mooveprince 23 hours ago 0 replies      
One more reason for the world to hate JavaScript ? :(
20
kyriakos 1 day ago 3 replies      
this is insane. someone should create a js obfuscator that converts human readable code to this.
21
eweise 18 hours ago 0 replies      
So glad I don't write in a "weird and wondeful language that lets us write some crazy code that's still valid"
22
catscratch 22 hours ago 2 replies      
This doesn't make me want to use JS. The power of JS is in two things, it's in every major browser and it doesn't completely suck. JS syntax kind of sucks. The power in JS is that it's dynamic and lets you send functions around, but defining functions is much uglier than defining a lambda in Ruby:

-> {anything goes here}

or

->(a,b,c) {anything goes here}

The problem with Ruby is that you then have to .() the lambda vs. (), so that is more verbose than just calling the function.

If browsers were to embrace a language that was more Ruby-like and less clunky than JS, I'm sure I'd use it more.

23
Posting Rules in Online Discussions Prevents Problems and Increases Participation civilservant.io
36 points by shrikant  13 hours ago   7 comments top 2
1
vinhboy 8 hours ago 1 reply      
I have a feeling this effect will soon be nil. The more subreddit sticky comment rules, the more people will adapt to filter them, like the way we ignore ads.

A lot of the subreddit I subscribe to have rules. I barely notice them anymore.

2
vacri 6 hours ago 1 reply      
I wouldn't be so sure of that. I've seen two separate communities completely fizzle out when rules were posted. These were smaller communities, with 20-50 people, though, and not reddit-size communities.
24
A gentle introduction to Prolog (2013) bernardopires.com
187 points by mihau  20 hours ago   107 comments top 22
1
Falkon1313 7 hours ago 2 replies      
I've seen multiple examples of prolog over the years. From looking at them, one gets the idea that you must hardcode all your data into your program and the only UI is a somewhat odd shell, with no way to actually send input in or get output out. It gives the impression of a neat idea that is a cool academic toy but not a practical language for real-world use. I think that it would be helpful if more prolog intros had a simple example that read a CSV file or JSON object or something, processed it using the defined rules, and output the results to text or HTML file. That's a minor thing, but I think that it would give a better impression and get more people interested and trying it.

Of course intros to other languages may gloss over I/O as well, but with mainstream imperative languages (that aren't oriented to defining and querying data), it's more well known or assumed that the standard I/O patterns apply.

2
kriro 3 hours ago 1 reply      
I'll add my default recommendation that I provide in every intro to Prolog thread: The best book to learn is "Prolog Programming for Artificial Intelligence". The intro part is great and the AI parts are also excellent. I think "Art of Prolog" and "Craft of Prolog" should be next in that order.

I fully support the choice of SWI-Prolog by the author of the post. SWI also has good interfaces to other programming languages, I've only used the Java-bridge though but I think Prolog mostly shines if you mix it with another language.I tihnk a good next step would be researching definite clause grammars and constraint programming as those are the (imo) best use cases for Prolog. If you're mostly interested in constraint solvers I recommend eclipse (not the IDE, very unfortunate naming): http://www.eclipseclp.org/

I think Prolog is a great language to train your brain if that makes any sense. It's quite nice to write a Soduku solver and the like in it even though you can get better performance in other languages. Whenever I write Prolog it takes a bit for my brain to readjust which I feel is a pretty good sign as it means you're working in a different paradigm.

3
feral 14 hours ago 7 replies      
I studied Prolog in college (3rd CS year course, 2003).

I concluded it didn't deliver on its promise.

The promise was that, as in the article, you 'Say what you want, not how you want it done.'

In practice, once you start writing non-trivial programs, you run into situations where they take ages to run, as Prolog does its search in the background.

So, you have to start using all these languages features to control and optimize the search, such as: https://en.wikipedia.org/wiki/Cut_(logic_programming)

And you end up spending a lot of time reasoning about the how that it said you didn't have to care about.

I concluded that, as a result of performance issues, the core Prolog abstraction 'leaks' too frequently for it to be worthwhile. (https://en.wikipedia.org/wiki/Leaky_abstraction)

Its a great promise, if a smarter language or implementation could achieve it, but overall I concluded that if I was going to have to spend all this time reasoning about the how anyway, I might as well just deal with that up-front, rather than after-the-fact.

I'd love to hear a contrasting opinion (I got pretty good at it, but only over months, not years, of use). But I suspect this is the reason why Prolog didn't make it. It looks good at the start, but it doesn't deliver.

4
resynthesize 17 hours ago 2 replies      
At last, I have something to add to a HN thread.

I used prolog professionally quite a bit back in the early 2000s. IBM had a product, Tivoli Enterprise Console, that was used to filter, aggregate, and correlate events from their monitoring toolset at the time. All of the rules for event routing and filtering were written in an extended version of prolog.

The system was quite powerful at the time, and I found rule writing to be really intuitive once I wrapped my head around the concepts.

IBM eventually sunsetted TEC in favor of a similar product they acquired when they bought Netcool, but I'll bet there are still a few organizations out there still using it.

5
pbowyer 5 hours ago 2 replies      
Is Prolog good for assignment problems (assigning guests to rooms or people to beds) when there are soft constraints?

I asked twice on StackOverflow [0][1] and had the question declined each time.

[0]: http://stackoverflow.com/questions/36148764/weak-rules-in-pr...[1]: http://stackoverflow.com/questions/37610341/assigning-people...

6
moyix 17 hours ago 1 reply      
A little known fact is that Microsoft actually used an embedded Prolog interpreter for network configuration in Windows NT:

http://web.archive.org/web/20040603192757/research.microsoft...

7
gavanwoolery 16 hours ago 0 replies      
Personally, Prolog was the biggest "woah" moment for me in learning programming languages.

If anybody wants a challenging and enlightening programming exercise, I recommend writing your own prolog[esque] interpreter.

Surprisingly it still has not been used much in games (well, actually not that surprising given how time consuming and risky it is). I made a stab at [1] but ended up taking more time than I had budget for. One thing I suspect may be using it is the game 1935 [2], although they are vague on the details.

[1] https://www.youtube.com/watch?v=2EHKDP2_ky0[2] https://mollyrocket.com/news_0023.html

8
exDM69 18 hours ago 1 reply      
I learned Prolog in some university courses but I'm gutted that I haven't had a single chance to use it in my professional life. I've given some thought to what kind of projects would it be suitable for.

The other day I was playing Sid Meier's Civilization and realized that the rule engine for games like that would be a very good fit for a Prolog-like logic programming language (using an embedded interpreter). Prolog would allow adding new rules without touching the old ones, e.g. add a new rule for, say, defensive bonus would be just a single new line in the code base.

9
agumonkey 17 hours ago 3 replies      
Unification + backtracking is really, really, really really cute. Makes you think very abstractly, so much that it made me feel that haskell was verbose (not trying to be hyperbolic here).

A nice book I've read recently is Ivan Bratko's https://ailab.si/ivan/novice.php

Try to grab a 2nd hand one or a library with it on shelves (probably stacking dust). The basics are covered, then graph search, state space, tricks like diff-list (pretty unforeseen use of prolog semantics tbh), a bit of nlp.

Very* cool

10
kensai 16 hours ago 2 replies      
I am always puzzled why Curry which is Haskell + Prolog in one unified packet has never taken off. Combining the advantages of functional and logic programming paradigms seems to have so many interesting applications.

Admittedly, Curry is an academic language, not 100% production ready.

http://curry-language.org/

11
adamnemecek 18 hours ago 3 replies      
I feel like people are somewhat aware of prolog but it's cousin datalog that's a db query language is much less widely known. I don't have too much experience with it but it seems like one of the technologies of the past that's superior to current alternatives but for some reason didn't take off.
12
sriku 1 hour ago 0 replies      
If you're interested in logic programming, Mozart/oz offers a better deal than raw prolog for practical problems. The reason is that you can express various search strategies using the concept of "computation spaces" in Mozart.
13
acjohnson55 16 hours ago 0 replies      
I'm always happy to see Prolog get some love. Learning it in a university course really expanded my mind, similar to when I first tried FP with ML in another course.

I went to a talk about MicroKanran, another logic programming language, which is embeddable in host languages. I think it shows a lot of promise for implementing decision engines. The biggest downside is that it can be tough to reason about the runtime characteristics of nontrivial programs, right about at the point where the paradigm starts to be really useful for modeling complex problems. It takes some experience to know how to write it efficiently.

14
collyw 19 hours ago 8 replies      
Prolog looks really useful for solving real world problems. Why doesn't it get used more?

And can you interface to it using Python or some more mainstream languages?

15
thinkmoore 13 hours ago 1 reply      
How many prolog programmers does it take to change a lightbulb?

No.

16
qwertyuiop924 16 hours ago 2 replies      
This helped explain a lot about how and why Prolog works. The coolest thing? That's only a tiny percent of the language, but it's already enough to start solving problems.

For those of you looking for prolog out in the real world, a surprising number of languages contain embedded interpreters for it. Mostly Lisps.

Perhaps most famously, picolisp uses a tiny, lisp-syntax prolog called pilog as a query languages for its built in database. Yes, it has a built in database. Picolisp is weird.

17
onetwo12 13 hours ago 0 replies      
Prolog is only appropriate for certain kinds of programs, long time ago I programmed in prolog and it was a very difficult task when the problem was not about matching and unification.

For me Lisp was much more appropiate and easy to program. Forward chaining and unification is not enough for certain class of algorithms, sometime you need backward chaining, probabilistic inference and many other ideas that are not easily translated in prolog. I remember some discussion about the semantic of clauses. For example misil(ready), is this about the misil is already ready, or that you are going to prepare the misil, etc. I find that concurrency and paralelism in prolog are not easy. In the book "on Lisp" by P. Grahan there is a prolog interpreter in Lisp, this can be interesting for somebody wishing to learn prolog.

Edit,Added, erlang was inspired by prolog, so learning prolog will help you learn erlang, but if you are a ruby type elixir is your best option.

18
doublec 17 hours ago 0 replies      
A system written using SWI Prolog is apparently used in a large number of NZ stock exchange trades https://dtai.cs.kuleuven.be/CHR/files/Elston_SecuritEase.pdf
19
YeGoblynQueenne 3 hours ago 0 replies      
I've been using Prolog since 2008 ish, on and off, with more time spent using it in the last couple of years. I've written my degree and Masters dissertations in Prolog, using different Prologs for each. I code all my personnal stuff in Prolog.

If I could condense the experience of those last few years with Prolog in one sentence it would be this one: "Prolog is not your friend".

It's not an "easy" language to learn- it's not javascript but with first-order abstractions, it's not Java with a different VM. You need to grok a fair few things about both the theory behind it -in other words, first-order logic- and the implementation decisions taken to make it efficient. For instance- clause selection order or, yep, the cut. You need to understand how this works and, ahem, cut yourself too many times until you get the message. Well, I had to, anyway.

There's a bunch of stuff you (or at least, I) never have to think about in day-to-day programming work, such as depth-first search and how it can go infinite. Then you need to get some experience with your chosen Prolog interpreter and learn its idiosyncracies [1].

There are rewards. [plug] My Masters dissertation [2] is a novel algorithm that learns a grammar from unannotated text. Because it produces a grammar in Prolog's Definite Clause Grammars notation, and because Prolog can interpret DCGs as first-order logic theories, these grammars are also logic programs that model the algorithm's input. I process some text, spit out a grammar and then without needing a separate compiler I run this grammar backwards to generate new strings, or the normal way to parse them. [/plug]

There's a point in the Prolog learning curve where you risk baldness from pulling out your own hair. Once past that point... it keeps hurting you, but the things you can do with it, it's bit like magic. Or maybe it's Stockholm syndrome :)

I've seen many criticisms of Prolog (some that are repeated in this thread). Eight years in I haven't seen one single line of criticism that still makes sense after you've used the language for a few years.

So to me the real problem with Prolog is that it hurts you so much that most people give up before they really figure it out.

Oh and- should you pick Prolog up never forget this: The dynamic database is evil.

[1] http://www.swi-prolog.org/pldoc/man?section=jitindex

Just a few days ago I was working on something I thought was best tackled using dynamic predicates (written to the database) rather than an in-memory list. My program took hours to process some data, until I noticed I was querying a compound term for its second argument. Just switching arguments brought the processing time down to five minutes on the same data. Did I mention the dynamic db is evil?

[2] https://github.com/stassa/THELEMA

20
partycoder 5 hours ago 0 replies      
Instead of learning one language every year, learn new programming paradigms. The logic programming paradigm is not implemented by many languages, so, might be interesting to learn.
21
problems 7 hours ago 0 replies      
A good post but (2013)
22
orionblastar 16 hours ago 1 reply      
I remember Borland Turbo Prolog. But it was so long ago that I lost the disk it was on.
25
Remotely accessing an IP address inside a target computer is a search washingtonpost.com
101 points by CapitalistCartr  17 hours ago   18 comments top 3
1
eveningcoffee 3 hours ago 0 replies      
I think that regardless of the touchy subject, the question of the author is fair as stated in the article:

"Is there a limit on how many different places can be searched under a single warrant while still satisfying the requirement that the warrant describe the place to be searched? Can a single warrant justify a search of thousands or even (hypothetically) millions of computers, all used by different people who dont know each other? At what point does the use of a single warrant to search many places make the warrant a general warrant that the Fourth Amendment prohibits?"

2
dahdum 16 hours ago 1 reply      
Using his analogy it seems more like you sent an invitation which the fbi returned to sender with a gps device. The FBI didn't search the unsent letters, they returned one that sent itself.
3
ZoF 15 hours ago 3 replies      
26
Monks Who Spent Years Turning Themselves into Mummies While Alive atlasobscura.com
109 points by Thevet  19 hours ago   79 comments top 8
1
biot 15 hours ago 1 reply      
This was discussed a few times earlier this year in an article that contains pictures of the monks:

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

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

Actual article: https://www.damninteresting.com/sokushinbutsu-the-ancient-bu...

Curiously similar wording too. Original article:

"Some of the monks drank tea made from the bark of the urushi tree during their fast. Also known as the Japanese Varnish Tree, its sap is normally used to make a lacquer varnish, and it contains the same abrasive chemical that makes poison ivy so unpleasant. Urushi is so toxic that even its vapor can cause a rash, and it remains in the body after death. Drinking urushi tea served to hasten the monk towards death as well as make his body even less hospitable to insects."

This new article:

"A kind of sumac, the Japanese lacquer tree is called such because it is used to make traditional Japanese lacquer, urushi. Its bark contains the same toxic compound that makes poison ivy so poisonous. If ingested by these monks, urushi tea would have both hastened death and made the body even less hospitable to the bacteria and parasites that aid in decomposition."

2
jdironman 16 hours ago 0 replies      
At the completion of a thousand-day cycle on this diet, practitioners were considered spiritually ready to enternyj. However, most monks completed two or even three cycles to fully prepare themselves.

Oh, come on. You know they just backed out like anyone would a couple times.

3
sadgit 15 hours ago 3 replies      
Is there any real spiritual value here? It appears to me to be misguided if the objective is to preserve oneself for later reanimation.
4
elcct 9 hours ago 4 replies      
If time can be divided infinitely you can live any moment forever
5
code_sardaukar 15 hours ago 6 replies      
As someone who grew up in a Christian culture that cherishes life, I find this sort of thing deeply disturbing. But I don't want to dismiss Buddhism. Even though I'm an atheist, I admire Buddhism's focus on compassion, and I think it has a beneficial effect on Buddhist cultures.
6
cairo_x 14 hours ago 2 replies      
I'm doing something similar, but with cigarettes and coffee.
7
dogma1138 14 hours ago 2 replies      
Jesus this is freaking morbid, I can understand suicide(side note: Apple won't auto fill/correct suicide this is interesting) but how can you mummify yourself pulling organs and draining blood sounds messy as hell.
8
amitbr 6 hours ago 1 reply      
I can understand why many would fail to see the value of this or classify the practice as morbid, most of the people here are from a capitalist upbringing. Here you are taught materialism is eveything. The idea to disconnect from the material and ultimately release yourself from your ultimate possession (your body) is an interesting spiritual practice undertaken by many ancient philosophies. In fact, in India, there is a law that prevents devoted monks from fasting to death for that very reason.
27
Artificial Intelligence Lecture Videos mit.edu
470 points by BucketSort  19 hours ago   42 comments top 16
1
jeyoor 19 hours ago 2 replies      
On just a quick glance, the breadth of the topics covered here is stunning.

I also liked this quote from Lecture 23.

> A lot of times we ... confuse value with complexity.

> And many of the things that were the simplest in this subject are actually the most powerful.

> So be careful about confusing simplicity with triviality and thinking that something can't be important unless it's complicated and deeply mathematical.

2
kennethfriedman 13 hours ago 1 reply      
Professor Winston (the lecture in these videos), also teaches a higher-level, seminar based AI reading class called "The Human Intelligence Enterprise".

It too, is an incredible class. Here's the schedule & linked papers from last semester: https://courses.csail.mit.edu/6.803/schedule.html

(Disclaimer: Professor Winston is my current advisor)

3
todd8 18 hours ago 2 replies      
I took this class given by Prof. Patrick Winston a while back, 43 or 44 years ago. I liked it so much back then, it served me well in grad school and for many years after. Next week I'm visiting with an AI company on behalf of potential investors.
4
icpmacdo 17 hours ago 1 reply      
Lecture 15 is really really worth watching through, even if your not familiar with the previous lectures

https://ocw.mit.edu/courses/electrical-engineering-and-compu...

5
antirez 15 hours ago 0 replies      
If you are interested in zooming into neural networks, at Coursera Hinton himself will teach you a great deal of things: https://www.coursera.org/learn/neural-networks
6
inovica 16 hours ago 3 replies      
I have a side project to monitor the homepage of every domain and I want to detect the type of site - ecommerce, blog, forum etc. I've just started on it and ultimately I want to be able to automatically extract data, such as product information from ecommerce sites. Would these videos help here or is there anywhere else that someone would recommend. I know I sounds very naive here... and I am, but there might be someone here who can give me a steer. I've started looking at AI/ML... or whatever its now called and getting a bit confused!
7
zardo 17 hours ago 0 replies      
This is a terrific class. I also recommend: https://ocw.mit.edu/courses/electrical-engineering-and-compu...
8
carlosgg 17 hours ago 1 reply      
9
monfrere 8 hours ago 1 reply      
I took this class a couple of years ago. It's outdated and overrated imho, with nowhere enough mathematical rigor to be useful. For example, the discussion of support vector machines (and classification in general if I recall correctly) was limited to two dimensions so that you didn't need linear algebra. The class also spends a lot of time on problems like path finding that you should be able to solve with your standard CS algorithms toolkit or just "logic" rather than needing to reach for anything that deserves the name "artificial intelligence" (at least today). Prof. Winston furthermore spends way too much time on vague truisms that may sum up or organize what's in his brain but aren't helpful to students. ("What if the answer doesn't depend on the data at all? Then you've got the trying to build a cake without flour.")

I hate to dismiss something as ambitious as this course and just tell people to blindly follow trends, but my honest advice would be to just skim these notes if you're interested and go take a normal machine learning course instead.

10
o2l 17 hours ago 1 reply      
Does anyone think these lectures would be a good place to start for someone with web development experience (LAMP + JS) and zero AI & ML knowledge ?

If yes, what is missing from these lectures ( related to AI or ML or Deep Learning ) which has been discovered or developed recently and should be learned during the start ?

11
matmatmttam 18 hours ago 3 replies      
Anyone has lecture 20? - "Lecture 20, which focuses on the AI business, is not available."
12
sagivo 12 hours ago 0 replies      
you can find all of the videos in this youtube playlist - https://www.youtube.com/watch?v=TjZBTDzGeGg&list=PLUl4u3cNGP...
13
msie 18 hours ago 0 replies      
Wow! Taught by Patrick Winston, he was the author of my AI textbook many moons ago! You can still meet many of the legends of Computing Science...
14
zelon88 13 hours ago 0 replies      
Amazing! I hope you don't mind but I cross-posted to /r/artifical. Thanks for the videos! This will make sure I get nothing done tonight but I should be smarter in the morning!
15
sudhirkhanger 9 hours ago 0 replies      
What are requirements for this course?
16
sotojuan 14 hours ago 0 replies      
One day I hope to have enough time to go through a majority of OCW!
28
CS221: Artificial Intelligence: Principles and Techniques stanford.edu
94 points by kercker  10 hours ago   13 comments top 4
1
akvar 8 hours ago 2 replies      
Sadly, viewing the videos requires login with a Stanford ID. For those inclined to learning through videos like me, this is a good alternative resource for the same - https://see.stanford.edu/Course/CS229
2
scoot 4 hours ago 1 reply      
Forgive me, but why is the fact that a university is offering a class to its students (hacker)news-worthy? Isn't that what universities do?
3
Cyph0n 8 hours ago 3 replies      
Firstly, damn there are a lot of TAs for the course! Secondly, it's pretty interesting how the course team has basically automated everything from homework submission checking to PDF report validation. I wonder how many students are taking the course?

As for the course itself, it seems quite interesting. Too bad I already have a lot on my plate.

4
akssri 3 hours ago 0 replies      
Rather odd that the course omits decision trees.
29
PDB ANSI-C to PostScript compiler (1993) iecc.com
53 points by 1ris  16 hours ago   8 comments top 5
1
arethuza 16 hours ago 0 replies      
As I recall, PDB stood for "Pure Dead Brilliant" - this was written in Glasgow... :-)

This was related to the NeWS/PostScript based HyperNeWS GUI environment that I still have very fond memories of. We used it on an EU ESPRIT project with a Lisp backend (Harlequin LispWorks).

Meant I got to work in PostScript, C and Lisp on the same project, which was interesting.

2
faragon 14 hours ago 1 reply      
Anyone knows if there is another C -> PS being Open Source?

P.S. Not strictly related to this, in addition to Ghostscript (GPL), I would like to see up to date MIT/BSD Postcript interpreters and renderers. Anyone knows of any, even if being an old implementation?

3
blackwre 4 hours ago 0 replies      
I remember seeing a demo of PDB at the British Telecom Software Engineering Centre at Glasgow running on a Sun workstation around 1993.

I contacted Arthur van Hoff (who went on to Java fame) a few years ago and he put me in touch with Tim Niblett who still has some source code, but if I recall correctly, didn't feel that he had the authority to release it.

https://twitter.com/avh/status/62644685486825473

I believe that PDB came out of the Turing Institute https://en.wikipedia.org/wiki/Turing_Institute which sadly closed in 1994.

It would be great to resurrect it, but we only seem to have the binaries.

4
Lord_Nightmare 5 hours ago 1 reply      
If anyone wants to play with the demo from 23 years ago, the code can still be found at ftp://nic.funet.fi/pub/languages/pdb/
5
chris_wot 2 hours ago 0 replies      
I'm really curious how to program in postscript now.
30
How We Built the Worlds Prettiest Auto-Generated Transit Maps medium.com
390 points by ant6n  1 day ago   58 comments top 21
1
Overv 9 minutes ago 0 replies      
Why did you jump straight to MILP for ordering the lines of segments? It seems like it would be more obvious to first try ordering the routes by id for each segment. That would guarantee that routes are always ordered the same way relatively to each other and would eliminate the problem in the before/after image with much less effort.
2
Chris_Newton 1 day ago 0 replies      
Thats a fascinating case study. Thanks for sharing.

Not so long ago, I was designing visualisations for a different type of underlying graph structure, but one that had some similar elements in terms of close edges that could be drawn together, a desire to minimise edge crossings, and the like. I spent quite a while studying Becks famous London Underground map and its modern derivatives, and then experimenting with some of the same ideas mentioned in the article here. I too found that rendering clean, practical diagrams to show messy, real-world underlying data can be surprisingly difficult! I have a lot of respect for the Transit App team if theyve successfully implemented algorithms that can produce output as beautiful as those examples in their general case.

3
wlievens 19 hours ago 0 replies      
Awesome material. I really love automated renderings that attempt to approach handmade quality.

A couple years back I attempted to automate our production planning. The effort failed alas (complexity and feature creep killed it) but I did make nice visualizations along the way.

Example: https://www.dropbox.com/s/jxiareohe0wi4z9/planning-example-1...

4
red_admiral 1 day ago 2 replies      
Looks lovely. But their comparison with apple and google (https://medium.com/transit-app/transit-maps-apple-vs-google-...) is missing something: "works on a desktop computer". I have a surface 3 pro with chrome/firefox/edge installed, I'd love if there were some html5 web view onto this for planning trips in advance, where I quite like the larger screen size and the ability to screenshot/print just in case.
5
clemsen 1 day ago 1 reply      
I would love to get more details on the linear-integer solve methodology, as it sounds impressive. Was the problem formulated to also work as a linear problem where the binary or integer variables were first treated as positive non-integer variables, and then checked using branch-and-cut (That's how I would do it)?Or did you do something differently?

 Fortunately, we found a different plan of attack: one which allowed the integer-linear-programming solver to explore the problem space more efficiently and find optimal solutions faster. What previously took an hour, now took 0.2 seconds.

6
moseandre 1 day ago 0 replies      
This is a tour de force in data science style computational geometry. I really loved the story. And very nice maps. Wow. :)
7
aninhumer 1 day ago 2 replies      
It's an interesting problem, and it's cool that they've found a decent solution...

But I can't help wondering how often these kind of complicated transit junctions actually occur in practice? There aren't really that many complicated metro systems in the world (to my continuing disappointment), and even they often still have fairly simple junctions.

Maybe it would be cheaper and more effective to just hire a graphic designer to hardcode solutions to the worst examples?

8
maxerickson 1 day ago 2 replies      
They are deriving a database from OpenStreetMap. Has anybody found where they share that data? It's likely that the OSM data license (the ODBL) requires them to publish the derived database.
9
mcam 15 hours ago 1 reply      
This is fascinating stuff, and nicely polished work.

We would like to develop something similar, but a non map overlay version, using our transit data at Rome2rio. Basically code to auto generate something like this for all of our 4,000 transport operators: http://content.tfl.gov.uk/standard-tube-map.pdf

We've been talking about it for a while but don't have the constraint layout expertise to do it internally.

Anyone interested in working for us to tackle this problem?

10
cbhl 19 hours ago 1 reply      
Have you had any reports where the algorithmically snapped-to-OSM route maps diverge from the actual bus/train routing, and if so, how do you handle that?
11
ryanbertrand 1 day ago 0 replies      
Great write up! I just downloaded the app and found a nice Easter egg. You can say you are the first app to support Hyperloop? :)
12
buckhx 22 hours ago 1 reply      
Pretty neat. I like the idea of using pixel space. They could break it out to tiles to parallelize things instead of handling things globally if that's a bottleneck for them.
13
coldcode 22 hours ago 1 reply      
Amazing process to build such an impressive result. Man I wish I could work on problems like this. This would making come to work fun again.
14
bunderbunder 23 hours ago 2 replies      
Beautiful, yes, but I'm a form follows function guy, and at least from looking at their screenshots of the Chicago Loop, I'm left thinking their version of the map is quite a bit less useful than the (admittedly unsightly and cluttered) official one[1].

Some things that are iffy or missing from a functional perspective:

Any indication that the red and blue line stations are connected by tunnels at Lake/Washington and Jackson.

For that matter, the fact that the Jackson blue line station exists in the first place - it's obscured by the B in the street label for Jackson Boulevard. Same goes for the LaSalle blue line and State red line stations, and the Washington blue line station is also iffy. That's over 1/4 of the stations in the map's area hidden under street labels.

Which stations have elevators? Most of the ones downtown don't.

Which directions are the trains traveling in? With the exception of the green line, all of the elevated trains go only one way around the loop.

Color matters, especially on a system where all the trains are identified by color. Why did they use a dark mauve to indicate the pink line? In the real system it's indicated by a bright bubblegum pink. They've created a big opportunity for confusion with the purple line.

A human touch might be able to make some better arrangement choices. The CTA map crosses the blue line over the green and pink lines a little outside of the loop, at the point where it diverges from the other two. That's a much better choice than trying to do it right in the middle of the already jumbled mess that is the confluence of all of the trains in Chicago's transit system (save one small spur line out in the suburbs) along a three block section of Lake street.

Clearly indicating that the purple line operates differently from the others is also useful, and might save someone who's unfamiliar with the system from a lot of time spent waiting on the wrong side of the station while watching a bunch of brown lines pass by.

I'll grant the loop section of the L system may well be the most fiddly, nit-picky light rail mapping problem in the world, and the datasets they were working with might not have given all the detail they needed. (On the other hand, that thing with hiding stations under street names feels pretty egregious to me.) I guess what I'm really going for here is, when it comes to drawing maps, I still think involving a human hand in the process can make an enormous difference in the quality of the final product.

[1]: http://www.transitchicago.com/assets/1/clickable_system_map/...

15
aosmith 7 hours ago 0 replies      
Um it's completely wrong, the purple line doesn't run west.
16
huhtenberg 16 hours ago 1 reply      
ant6n, there's something weird going on with images on your homepage - http://imgur.com/a/CGse2 - they all appear shrunk horizontally. That's in recent Firefox on Windows.
17
cbhl 19 hours ago 0 replies      
Are there any plans to make these programmatically-generated transit maps available as posters or dead-tree paper maps?
18
owenversteeg 22 hours ago 1 reply      
Is there a publicly available list of cities?
19
kuschku 1 day ago 1 reply      
In this example image: https://d262ilb51hltx0.cloudfront.net/max/2048/1*bSjX6T0OaMX...

Why doesnt the integer linear ordering put the orange line completely inside the loop?

That would remove 3 crossing sections, and look better.

20
williwu 1 day ago 0 replies      
Awesome work. I use the app frequently.
21
simooooo 1 day ago 0 replies      
Very nice
       cached 9 October 2016 13:02:01 GMT