The end of politics: Cities, social networks and loneliness in the 21st century - <AUTHOR> http://futureurbanism.com/interview/the-end-of-politics-cities-social-networks-and-loneliness-in-the-21st-century/ <comment><USER2> >If you look at a lot of Western countries like Spain, France or Italy, you'll easily realize that they are not doing very well: they are mostly lazy, complacent, nothing much going on there.

Such a simplistic and borderline racist analysis of the economical situation of these countries. This kind of narrative reminds me a lot of what was said on some media outlets during the recent Greece bailout episode.

<comment><USER3> What is funny is Northern Italians accuse Southern Italians with being lazy, complacent, nothing much going on there.

Now I would love to see the Northern Italian's reaction to this. We have something similar in the States where the Northeast (Where I am born and raised) and particularity in New England view the rest of the country as backward lazy people with no real work ethic. I really had to fight this mindset when working in the Mid-West, South and California.

EDIT data on Italy divided- [http://www.hurriyetdailynews.com/italy---divided- country.asp...](http://www.hurriyetdailynews.com/italy---divided- country.aspx?pageID=500&eid=91)

</comment></comment><comment><USER4> Article reads of ignorant hipsters that are attempting to do shallow sociology, politics, and history.

</comment><comment><USER4> > increasing influence of networks

What if I was to tell you that wealth has always traveled in networks. And most rich people are closely related to rich people of the past.

<comment><USER5> That goes for every amount of wealth. Poor people probably relied on their extended networks since the beginning of time. (From that perspective, urban social individualism and reduced social dependence are a lifestyle enabled by modern abundance.)

I think he framed it that way to gain relevance. It is a common gesture to indirectly refer to a previous time without any historical substance. Especially in politics and social science.

If we assume it's a rhetorical gesture, "the influence of networks increased" is just "i think networks are important". Saying the latter is legit, I guess.

Same for wealth concentration. Compared with 1700, we live in an egalitarian garden eden. ..however, "the increasing gap between rich and poor" is a useful gesture to say "I think considering the gap between rich and poor is important". - Which again, seems legit to me.

</comment></comment><comment><USER6> This article reminded me of Peter Watts' dystopian view of the future in "Echopraxia", and how close we are to enter this brave new world.

</comment><comment><USER7> Not even going to read this. The "end of politics". No such thing. As long as there are people we will be complaining about politics, but there will never be people without politics. It is what we do. Facism, technocracy, theocracy, monarcy, democracy, anarchy, it's all politics. Just because the process is not exhibited in a format that is recognizable by Western ideals or easily packaged and showcased on Fox News or _some_ of us get lazy and acquiesce or some are forcibly disenfranchised does not mean we've seen the end of politics.</comment>


A URL shortener service in 45 lines of Scala - <AUTHOR> http://grasswire-engineering.tumblr.com/post/94043813041/a-url-shortener-service-in-45-lines-of-scala

<comment><USER2> I know scala is very powerful, but I think this code proofs to me that scala code is difficult to read. I'm a pro functional programmer, but scala mixes too many concepts.

'pseudo' Python url shorterner in 14 lines of code:

      from webapp2 import RequestHandler
      import redis

      def shorten_url(url):
        import base64
        return base64.encode(url)[:7]

      class Handler(RequestHandler):

        def get(self, path):
            self.redirect(redis.get(path))

        def post(self, path):
            redis.put(path, shorten_url(path))

<comment><USER3> I believe you'll have a lot of collisions that way, as two URLs with the same 7-byte suffix in base64 will have the same key. The Scala version uses 7 random characters, which I think will lead to a collision after about sqrt(36^7) entries due to the birthday paradox (62^7 if alphanumeric includes both uppercase and lowercase). That's better, but I'd recommend just using something autoincrementing instead, which in theory makes collisions impossible.

<comment><USER2> I agree. It was a short pseudo implementation.

</comment></comment></comment><comment><USER4> As far as I am aware, the standard implementation of a URL shortening algorithm is to convert the number to a higher base, not to generate a random string. This has the advantages of greater loading speed, and smaller storage size.

Here is one I wrote long enough ago for me to be divorced from its implementation flaws: [https://github.com/TShadwell/go- shorten/blob/master/shorten/...](https://github.com/TShadwell/go- shorten/blob/master/shorten/shorten.go#L84)

<comment><USER5> That makes sense. Thanks for the code.

</comment></comment><comment><USER6> Now that Twitter auto-shortens URLs (and expands them in the UI), is there really a use left for URL-shorteners? Are there any other major platforms where text length matters?

<comment><USER7> The biggest advantage of URL shorteners, outside of the length, is the ability to quickly generate URLs that are track-able, instead of constantly adding campaigns with something like grasswire.com/1234?refid=twitter, which is how a lot of marketers track where their clicks come from.

<comment><USER8> This is only beneficial to one side of the userbase. For users clicking the links it's only inconvenience.

</comment></comment></comment><comment><USER9> The site is blocked at my work so I can't see the implemtation but here is one I wrote back in march that is 79 lines: [https://gist.github.com/eliotfowler/9360895](https://gist.github.com/eliotfowler/9360895)

</comment><comment><USER10> Here's another one in 27 lines of Clojure: [http://beauhinks.com/simple-url- shortener-with-clojure/](http://beauhinks.com/simple-url-shortener-with- clojure/)

</comment><comment><USER11> What would be the minimum path size in the shortened url to ensure a large enough capability of storage without letting users guess other urls easily?

</comment><comment><USER12> 83 lines in Go: [https://github.com/didip/shawty](https://github.com/didip/shawty)

</comment><comment><USER13> Where does this handle getting the same random shortened url twice?

<comment><USER5> Good catch - it doesn't. We'd need to add a line to check for collision and retry. Better yet is to use hashing instead of random string as some folks mentioned in the comments on the blog.

</comment></comment><comment><USER14> And another one I found, in 81 lines of Haskell (may be interesting for comparison): [https://github.com/ryantrinkle/memoise/blob/master/src/Main....](https://github.com/ryantrinkle/memoise/blob/master/src/Main.hs)

There's also a presentation to go with it: [http://vimeo.com/59109358](http://vimeo.com/59109358)

</comment><comment><USER15> Instead of working on a URL shortner, I suggest you work on not sending usernames and passwords in clear text via HTTP POSTs.</comment>


Roku Unveils Its 4K Streamer, the Roku 4 - <AUTHOR> http://techcrunch.com/2015/10/06/roku-unveils-its-4k-streamer-the-roku-4-plus-new-software-discovery-features-and-upgraded-mobile-app <comment><USER2> i have a first generation roku that's still chugging along (despite some apps no longer working with it - looking at you HBO GO) and originally had no plan to upgrade, but the software on the new version looks very promising. Rather than switch between netflix, amazon, plex, etc. i can just look for a movie and select a carrier.</comment>


Show HN: Book flights for 1/10 of the cost upfront - <AUTHOR> I built a flight booking app/website that lets you book flights immediately and pay for them over time. http://bliss.flights
I got frustrated after being unable to afford an important trip ($1000+) while ass-broke in college and realized it's a big problem for other young people who don't own credit cards.
Besides financing payments, Bliss has "GTFO Deals" similar to Scott's Cheap Flights, where we notify you whenever we see unusually cheap flights flying out of your city (i.e. $250 roundtrip from New York to Madrid).
Would you use it? Any feedback? <comment><USER2> I'd use that, how would you handle payment with folks who change their mind?</comment>


Ask HN: Recruitment freelancer vs. permanent position - <AUTHOR>

Hi there, at the moment I am looking for a web developer for our Start-up in Berlin, Germany.
My initial plan was to hire somebody on a permanent basis but I am wondering if I should consider freelancers, too.
A permanent position offers us an employee who can grow with us, somebody who will identify himself with our company. Further, it will take some time until this person familiarises himself with our processes and systems. I guess I am afraid that a freelancer could just leave at any time respectively that a freelancer doesnt consider himself as a "real" part of our team.
On the other hand its easier to find a freelancer and I am kind of convinced that even a freelancer could be turned into an employee as soon as he feels home and loves what we're doing. And an employee is not really an insurance for something permanent because employees can also leave at any time (more or less), right?
My question would be: does anybody of you guys made any experiences within this area? I'd appreciate your input.
Cheers from Germany
Tino <comment><USER3> Where I work we tend to bring people in on a 3 month freelance basis with the possibility to hire at the end. This allows us to get familiar with the person without having to go through all the hassles of setting up a new employee just to terminate it if they are not what we were looking for, or the other way around. Just make sure you know what the freelancer is looking for - <USER2> enjoy the lifestyle of being a full-time freelancer and wouldn't even consider a full-time position in the end.

</comment><comment><AUTHOR> Thanks for your input!

</comment><comment><USER4> Go contract to hire. It gives you an easy out if they end up not being a good fit. It's really the way to go with new folks regardless of how the interview goes, IMO.</comment>


Show HN: I made a point of sale system with self-service for mobile devices - <AUTHOR> https://www.flexiblepos.com/ <comment><USER2> Overall, very simple and to the point but not worth $219/mo. In your DEMO, the "Order Status" page takes approx. 4.76s to load 205 orders...this seems like a very poor architecture decision or a poorly written SQL statement combined/rendering logic, especially in 2020. You are headed in the right direction though! To compete with the big guns, you'll either need better pricing or better features (including what others already offer). Make sure to do your market research beforehand or lineup a paying customer in return for significant discount. Best software is created when you have end-users using it and providing you direct feedback.

<comment><USER3> Is this advice anecdotal or from personal experience?

<comment><USER4> Lengthy load times are detrimental to UX. Just look at how people are increasingly less likely to wait for a page to finish loading with every additional second it takes to load [1, 2].

In regards to feedback from users, this is especially true when finding product-market-fit (when an idea actually becomes a business). There's nothing better than learning what customers who actually use your product want in future releases/improvements. It's a case of building based off actual demand versus based off a hypothetical in one's mind (a very common "failing", i.e. learning experience, for first-time founders). Only when your product grows to the point of attracting potential customers outside your target demographic should you not place tremendous value on every single piece of feedback.

[1]: [https://moz.com/learn/seo/page-speed](https://moz.com/learn/seo/page- speed)

[2]: [https://neilpatel.com/blog/loading- time/](https://neilpatel.com/blog/loading-time/)

</comment></comment></comment><comment><USER5> Two perspectives: I worked and coded out on alternative POS solutions right when iPad POS solutions became popular. But it's a dead end. It's too complex and resource intensive for an indie shop, it's not worth it.

For example, you may or may not have finally got this done, got it shipped, all those things are great. But your workflow and marketing are meant for tables. This is now dead on arrival.

Second perspective as a restauranteur: $219/mo is crazy expensive. I pay $300/mo to Revel and $180/mo to Clover for two different types of businesses.

With the $300/mo to Revel they process thousands a day and I have 24/7 phone support that within 2 min a live human handles my problems.

With the $180/mo to Clover they process hundreds a day and I have an easy to use, to easy to service system that I can hack into and custom build Android apps to do whatever I want.

Your $219/mo don't come close to delivering value like that.

Sorry.

<comment><AUTHOR> Thank you for your insights and suggestions.

I explain the thoughts behind the price a little in this comment: [https://news.ycombinator.com/item?id=22625906](https://news.ycombinator.com/item?id=22625906)

EDIT:

> From my survey I know that organizers pay more than $ 200 for a order > management system (e. g. about $ 300 for the system and more per device > needed).

I would like to add that this is the price for two days of rent.

<comment><USER6> Have also worked on POS programs and I have to agree with this sentiment:

> It's too complex and resource intensive for an indie shop, it's not worth > it.

If you're not an existing system, the client interfacing and employee training has to be factored into the costs on both ends. If your demo can't cover the client's needs to a tee, that's either an immediate deal-breaker or you have to build more features just to get considered. Then you have to market your product, do customer service, and do sales.

If you take that all into account, your product is not worth it for you nor the client.

</comment></comment></comment><comment><USER7> We've been using uniCenta at our restaurant for 4 years (the open-source version). It's barely usable, all our employees hate it, the UX (and UI) gives the impression that all the people working on it have never actually used it themselves. It's dead-slow and sometimes you need to log into the mysql DB directly to clear some tables..

The reason why we use it? We're not in the US - there's not too much room for a commercial $$$/month solution for us at the moment and the switching costs (retraining people, integrating our custom reporting and monitoring) would be way too huge.

I'd definitely consider a different solution if I'd ever start a new restaurant (highly unlikely though - it's hell. _Much_ harder than running a startup of a similar size :)) but I'd much prefer a % revenue-based approach (with an upper cap) than a fixed pricing model.

<comment><USER8> What seemed like a straightforward product turned out to be an intricate challenge.

The problem with being a small shop selling POS products is finding customers at the right time. It is very sales intensive process. You have to reach them at the right time, once a restaurant is invested in a POS, it is almost impossible to convince them to switch. They choose to just live with whatever choice they made and focus on other things that matter. So now, as a developer, you need to give them a good reason to switch.

Money is a good one. So now you are in a price race to the bottom; never a good place to be as a small shop.

Another common ask is integration. They want to try out the product before committing but they can't afford to train folks to use two products at the same time. So now you need to come up with an integration strategy without even having a clear API/structure to work with.

It's a nightmare. Unless you have customers ready to commit which to me seems impossible in the retail business without already knowing people on the inside.

</comment></comment><comment><USER9> I have no experience with POS solutions, especially not for catering and restaurant. So tak my opinion with a grain of salt.

General: As the site came up in German, I assume you at least think of targeting this market was well. Germany made invoice copies for customers mandatory this year, on top of the already somewhat crazy requirements regarding auditability and compliance for POS systems. Quite a barrier for new systems, but from what I heard out of the local start-up scene here, there are not that many certified solutions out there yet.

I would talk to a tax consultant to get an opinion from that angle. And I would aim for official tax certification, that will make life for your customers so much easier and would be a true selling point.

Pricing: Kind of tied into the above, obviously a solution that gets tax authorities of your clients backs has some inherent value to them. For the upper range, 219 USD doesn't sound to abusive, depending on service levels and support. I would just add a couple of tiers between hte free version and the Pro one. And maybe limit functionality for the free version instead of tables, by limiting tables lacals with less than 10 tables will never convert to paying customers. And you are incentivizing toying the set-up to work with 10 "tables", depending on what exactly is a table.

I don't agree that a table based solution is dead on arrival, een if restaurants are forced to close. Sure, a delivery, contactless, solution would be great by now. But things will get to normal one day. And then an affordable, certified POS solution like yours will certainly have value.

Marketing might be an issue, so. But maybe the corony crisis akes care of that when a lot of competitors relying on VC money to get customers, well, leave the market.

</comment><comment><USER10> On the pricing front, you may want to consider the fact that restaurants generally don't grow by adding tables. That means that with this pricing structure it will be very hard to move customers from free to paid. Your best bet is probably a free trial in this instance.

</comment><comment><USER11> The linked page doesn't show the process clearly. Not sure about the target market, but it could be very helpful to show each step visually:

1) Print out QR codes for every table

2) Customer scans QR code

3) etc.

(or if that's not how it works, I didn't understand it either!)

</comment><comment><USER12> I really like this, looks very nice! Well done!

Also I've heard that using establishment-provisioned tablets results in greasy screens, this solution alleviates that by using the patrons own devices :)

</comment><comment><USER13> I have to say that I was in the early stages of designing something similar. Although POS is complex by nature I think most of these systems are pretty static. I'm curious if you had feedback from potential customers and how you got to your pricepoint. Feel free to reach out ralph.das[]gmail

<comment><AUTHOR> I built the inital version for my own university project. Now, after a few years I got it out of the drawer, adapted it and now it is publicly available. It was mainly built for events.

Part of the university project was to make a quantitative survey, ask the staff of events what they need, ask the customers what they need. Then I built the application and made an event to test it. This enabled me to collect a little feedback.

From my survey I know that organizers pay more than $ 200 for a order management system (e. g. about $ 300 for the system and more per device needed).

Until now only leisure clubs used it for events.

</comment></comment><comment><USER14> Pricing for Pro looks a bit steep.

I maybe wrong though.

<comment><USER15> No, I agree - part owner of an independent bookstore here (obviously a different kind of business). Waaaaay too steep. Could never afford that if I ran an independent local restaurant.

</comment></comment><comment><USER16> Adding a clear button to the product search might boost productivity.

Editing quantities from cart will also be helpful.

</comment><comment><USER17> Congrats! I applaud that you are productizing a barebones MVP-level application. You have initial users, definitely pay attention to their feedback. Both for technical improvements, but more importantly for any tips on how you can market this.

As many other commentators have pointed out, you face an uphill battle. The incumbents have way more features than you do and they handle more use cases out of the box. They also offer support. Still it's important to not compete on price - you need to differentiate your service, find your initial market and aggressively pursue those customers. This is more marketing than anything technical.

Some constructive criticism:

On the demo:

1\. It is not clear from the demo itself if the demo is for self ordering or for waitstaff ordering. I would like to know how my waitstaff will manage multiple tables? How do I switch tables?

2\. How does my kitchen or food runners mark an order as done? I try to click on the order in the status page and it only opens the accordion.

3\. How do I input my menu? What is the admin panel like?

4\. If I run out of fries, can I scratch the item from the menu in real time?

5\. Feels like managing each location in a different instance will be a pain point for multi-location customers. I would test this assumption with market research. If the market share of multi-location users is small, and multi- location management is painful I would recommend not targeting those customers until you get traction and can afford to fix the problem or handle supporting the customers.

On performance:

My load times for the status page were about 2s - which is still too slow. Given that pupdogg experienced 4s load times, I am guessing that your backend did not handle the HN traffic spike well. Definitely look for ways to speed this up - most of your app's traffic will be concentrated within a few hours.

On pricing:

I agree with the other commentators that the pricing makes no sense.

Right now you have a freemium model, tiered by # of tables. 1\. Freemium is great when you can tier by feature offerings or when you can tier by resource allocation. For the former, a SaSS will offer Single Sign On for paying users only. For the latter, the SaSS may give a free tier for personal use, (e.g. a single user account).

2\. When we delineate by seats (in your case tables), we are making a bet that as the customer scales up, our product will become essential to our customer working at scale so they see the value in converting to the paid tier. This has an assumption that our customers will scale up.

as fapi1974 pointed out, restaurants don't scale up like this. Their tables are, for the most part, fixed.

Restaurants with more than 10 tables will likely not try the product, and restaurants with less than 10 won't add more than 10.

Instead a free trial makes a lot more sense. Your product is not one-shot, it is recurring. If a customer does the trial and invests the time to input their menu and train their staff then there is a good chance they may convert after the free trial ends. (in fact you can and should track free-trial usage and an leading indicator of whether the customer will convert)

I would also think about unit pricing. $219 for 10 tables is very steep. $219 for 100 tables is a bargain. However, I would guess that the market skews closer to the 10 table capacity.

Final thought. Think about how this helps your customers. Does it save more than $219 a month? Does it increase value for their offerings (probably for event organizers) When you sell to businesses remember they are economic buyers - they need it to make business sense first and foremost.

Best of luck!

<comment><AUTHOR> Thank you for your congratulations and taking the time to write such a detailed comment.

Yes, the demo is just the access point for guests, so changing the status on the status page is not possible. It's an information for the guest about there current orders. The interface for waiters is nearly the same, except they can choose the table at the beginning and are able to checkout orders on a table (mark them as paid).

Maybe a video with some examples would be helpful to understand the process.

Currently it is important for me to find real customers so I will definitely work on the pricing model. I also thought about different pricing models (like tauntz mentioned a % revenue-based approach with an upper cap). For starting this MVP it was important to keep it simple so I decied to use a fixed price per month. Maybe I should cut it to find real customers.

</comment></comment><comment><USER18> How does this integrate with the inventory management restaurants require?

<comment><AUTHOR> Currently it focus on processing orders, but this would be a nice improvement for the future.

</comment></comment><comment><USER19> Great work. Let's talk

</comment><comment><USER20> I really like your pricing plan design. Hope it works well for you.</comment>


Nim Programming Language v0.17.0 released - <AUTHOR> https://nim-lang.org/blog/2017/05/17/version-0170-released.html?source=hn <comment><USER2> Nim has a beautiful syntax, I feel a bit like i am getting the expressiveness and ease of F# but with much better performance and nice small executables instead of byte code that needs a runtime. c interop being easy and no cost is also very nice.

<comment><USER3> Yep, looks much more pleasurable to type compared to Rust and Go...

Check this HTML mapping to Nim (I suppose its all a bunch of macros): [https://github.com/pragmagic/karax/blob/master/examples/todo...](https://github.com/pragmagic/karax/blob/master/examples/todoapp/todoapp.nim)

</comment></comment><comment><USER4> Of Rust, Crystal, Julia, etc I'm most excited about Nim because of expressiveness (macros), ergonomics(simple syntax and GC), and speed (native compilation). Anxiously awaiting 1.0 so I can really commit.

<comment><USER5> Why don't you commit now? If you really love it, wouldn't now be the best time to get involved?

> speed (native compilation)

Native compilation is often stated as a speed benefit, and it definitely saves startup costs, but Java is still extraordinarily fast; the JIT is an impressive thing.

I think there are good reasons for native: deterministic runtimes; fast startup times; low memory overhead; and lower runtime costs. Some of those you give up by adding a GC back in though.

Speed isn't necessarily one of the reasons for native.

<comment><AUTHOR> The biggest advantage of native compilation to me is dependency-free binaries. That is one of the reasons I began using Nim and one of the reasons I avoid JVM languages.

<comment><USER3> That is the major selling point of Go to me. Is Nim similar in terms of tooling quality?

</comment></comment></comment></comment><comment><USER6> For anyone interested in a 48 minute overview, this is a good video:

[https://www.youtube.com/watch?v=_HeU8yg_WaE](https://www.youtube.com/watch?v=_HeU8yg_WaE)

</comment><comment><USER7> I think Nim has the potential to become one of my go-to languages. I also like Rust, but I think even though they may operate on a similar level of abstraction from hardware they target different types of project. Rust is as expressive as it can be while making it difficult to shoot yourself in the foot. Nim trusts you with the BFG (term-rewriting macros!). Each language philosophy has its merits. The organizations managing the most developers clearly favor imposed-discipline languages, and that makes sense for something as large as a browser. Highly expressive languages tend to result in personal code, which I think is fine for projects with smaller numbers of contributors who are all on the same page. In that sense, Nim seems like the Lisp of systems-level languages. A powerful tool for getting things done that asks a bit of its users.

</comment><comment><USER8> Nim is the underdog of upcoming system languages , but it sure has a strong bite . Given the steady progress made by the development team it appears to become a more satisfying language to use than Rust or even Go.

In the end every developer tries to be :

Faster,Better,More Efficient

and Nim could be the tool to achieve these aspirations.

</comment><comment><USER3> This example looks very good: [https://github.com/pragmagic/karax/blob/master/examples/todo...](https://github.com/pragmagic/karax/blob/master/examples/todoapp/todoapp.nim)

They seem to have a JS backend.

</comment><comment><USER9> Congrats on another great release, Nim team.

</comment><comment><USER10> Nim is looking really good! It deserves a chance definitely!

<comment><USER11> All it needs is a killer app, or more appropriately a killer port. Make the compiler generate code for the ESP32 and it gets world fame in no time.

([https://en.wikipedia.org/wiki/ESP32](https://en.wikipedia.org/wiki/ESP32) \- for those living under a rock during the past year or so :^)

<comment><USER12> Nim compiles to C source code. Isn't the ESP32 SDK just C?

<comment><USER11> I believe so, but on a ucontroller it also needs to know the machine data types, memory structure, internal peripherals etc, where is this or that pin, how to start a timer or read the ADC etc. Probably all it needs is a good set of .h files to generate appropriate code.

<comment><USER13> Just as a sidenote, there is:

[https://github.com/xyz32/boneIO](https://github.com/xyz32/boneIO)

...and a while back I played too with:

[https://github.com/gokr/ardunimo](https://github.com/gokr/ardunimo)

Nim is quite perfect for these things since it compiles via C/C++ which makes it go anywhere.

</comment></comment></comment></comment></comment><comment><USER14> Nice. I was just looking at PR#5677 yesterday. Good job!

</comment><comment><USER15> YANPLUSUM - Yet Another New Programming Language Undergoes Some Unimportant Milestone.

<comment><USER16> Can you please just not comment when this is all you have to say? Comments on HN should be civil and substantive.

<comment><USER15> This post about yet another "new programming language" reaching a milestone consisting of random digits was upvoted so that it reached the front page of your web site, and my pointing that out resulted in my not only being downvoted but revenge-downvoted across several other posts. If you wish to improve your web site's content, a more valuable service toward that end would be to excise the spammers promoting the above nonsense content, and revenge- downvoting across answers, rather than criticising me for pointing out that this emperor is not wearing any clothes.

<comment><USER16> We do penalize minor release articles, and there are software protections against abusive downvoting. What we need from you is no more comments like these. It's not criticism, they simply break the guidelines.

<comment><USER15> The spamming of this site by these kinds of projects has gone far enough that it has now been parodied in a television series:

[https://www.reddit.com/r/SiliconValleyHBO/comments/6cy0x3/th...](https://www.reddit.com/r/SiliconValleyHBO/comments/6cy0x3/the_guys_conspiring_in_reddit_vote_rigging/)

Quote on the whiteboard by the character "Gilfoyle" in "Silicon Valley":

HACKER NEWS!!! Get friends to upvote

One would have to be extremely naive to think that anyone except friends of the authors would upvote a link to a changelog for version 0.17.0 of a "new programming language" on this site.</comment></comment></comment></comment></comment>


Is the next second language JavaScript? - <AUTHOR> http://www.greatschools.org/parenting/learning-development/5894-javascript-class-learn.gs

<comment><USER2> Marginally relevant story:

A few months ago I was trying to get my siblings interested in "doing things with computers". I decided to do this by showing them how powerful a few lines of code could be. I had already tried to get them into programming puzzles [topcoder, etc.] and that didn't go anywhere, and they were being taught boring things[1] like string manipulation at school.

I showed them some html and css tricks [because I'd recently picked up css] and they were strangely unimpressed. While they watched I wrote a quickie chrome extension that moved the Compose button in gmail to a different location. Change facebook chat box size. No reaction. These were bright kids who'd never shown the slightest interest in programming and I was once again despairing that they never might[2]. At a whim I created a rails twitter clone while they watched and fidgeted, and told them to go to <http://192.168...:3000/twitter> on their computer and post a status message. They did that and it showed up on my computer. Their reaction was astonishing - they simply could not believe how little it took to get that to work!

I don't know exactly why that particular example worked but they were hooked instantly. Now they have written chrome extensions and launched tiny websites and are checking out some new things. :)

My takeaway was to get to the aha moment as soon as possible while trying to get someone interested in something.

[1] boring for someone who hasn't programmed before and doesn't see the point of learning to manipulate strings

[2] not that anything is wrong with not programming but I want them to give it a chance

</comment><comment><USER3> I wonder if JS is perhaps a bit too high level and internally complex to be a great first programming language to be taught to people with no CS fundamentals. Fully internalizing front-end development is no trivial task, and teaching JS out-of-context just by itself might not be super helpful, even though it's probably better than jumping straight to Java, which is also quite magical internally.

On the other hand I can see someone making the same argument about a low level language like C. One could claim that without full understanding of assembly, compilers, the ISA, and hardware-level optimizations you don't really gain much insight into computing.

Reminds me of the never ending debate about whether they should teach Java or assembly as first language in a CS curriculum.

There's probably no right answer, you just got to start somewhere and you'll figure things out on the long term. The web is ever more relevant and JS won't go away for a long time.

<comment><USER4> I'd say the best 1st language would either be scheme or smalltalk.

<comment><USER5> I have mixed feelings about this. On the one hand, I agree completely, on the other, being a 'first language' has really hindered scheme in the minds of programmers. Many (ridiculously) think of it as a ridiculous teaching language they were forced to learn.

</comment></comment></comment><comment><USER6> Don't care if it's JS or anything, as long as programming, or as I love to say, crafting is taught at schools, it will be great.

First of all, Making money by creating beautiful and useful things is such a good lifestyle.

Secondly and more importantly, it's about how to be better educated. Back to the years when I was at schools, I was told taking exams are of top importance, everything I learned seemed so boring. Things changed when I was 20sth, and I started to make things, that's when I really start to love knowledge, be it art, writing, music, because everything now starts to make sense.

Back to JS, there is no better place than the web to meet smart people, show them what you make, have fun and be cool. So JS, why not?

</comment><comment><USER7> I found this organization more interesting than the article. I was curious due to the density of advertising. According to their 2011 audit, the site generated more than $2.6M is advertising revenue that year.

> Website activity income generated on the Organization's website from > advertisement placements is a function of website page views and price. The > Organization's current partners are education- related firms, real estate > and mortgage professionals, consumer companies, and Google. Website activity > income is recognized as it is earned and for the year ended December 31, > 2011 amounted to $2,671,405. Related website activity expenses are > recognized as incurred and consist of expenses allocable against website > activity income based on managerial assumptions. Website activity expenses > amounted to $873,813 for the year ended December 31, 2011.

Source: [http://www.greatschools.org/catalog/pdf/2011_GreatSchools_Au...](http://www.greatschools.org/catalog/pdf/2011_GreatSchools_Audit.pdf)

</comment><comment><USER8> We are teaching basic JavaScript to beginners at <http://codehs.com>

We've made some simplified libraries that make everything a bit simpler to get really cool results, and kids have been loving it and learning a lot!

</comment><comment><USER9> Unless you're in a hurry to teach someone RIGHT NOW how to program, I'd wait till next year when JS.Next, Kotlin, and Dart are ready and stable.

<comment><USER10> Personal opinions about Javascript aside, it does cover several fundamentals, is available on every platform, and is established enough that it will probably (sadly) not be going away any time soon. If you're going to teach kids a language, maybe one that isn't gone by the time they're out of school (which is a distinct possibility for the languages you've named; a lot of good languages died within years of their arrival) would be best.

</comment></comment><comment><AUTHOR> To understand coding at school is like learning basic mathematics in school. Once you know the basics, you can really build up from there.

</comment><comment><USER11> Languages change all the time. To single out one language in particular and label it as "the language" to learn is erroneous.

</comment><comment><USER12> Start the "no, it should be _insert my preferred language here_ debate".

Yes, it should be Javascript, and probably starting with some basic jQuery stuff.

Yes, Javascript syntax sucks, but if you

1\. Set up a basic text document correctly 2\. Load jQuery 3\. Right some really basic html/jQuery 4\. Open it in ANY browser

It works. Boom. That's it. Every browser in entire world, every single time.

My personal suggestion would be to stick to front-end coding for web pages (HTML/CSS/JS/jQuery) and then for server side teach Python, because the syntax is easier to think about but actually deploying it is reasonably interesting and teaches some important concepts. But to get kids excited, it's gotta be about the front end. Why do you think so many kids these days got their start editing their Myspace pages?

</comment><comment><USER13> Getting kids interested in programming is a good idea. But, this should be done early and in stages. Little kids should do something simple like Logo (maybe with a 3D printer for fun).

<comment><USER14> I keep reading comments in HN about Javascript being too complex for beginners, and I have no idea what they are smoking. Of course students will need some 'training wheels' to get started getting results, but the basic pieces to handle and compute data are dead easy to understand.

<comment><USER13> What I meant was that it needs to be part of a curriculum that begins with early childhood. IMHO, JavaScript is too complex for most four and five-year- olds. There should be a progression with Logo, MIT's Scratch, etc. building up to more general purpose languages/frameworks.</comment></comment></comment>


Thanks Amazon for Thinking That I'm a Hacker When Your Service is Down - <AUTHOR> http://jamesyu.org/2008/06/06/thanks-amazon-for-thinking-that-im-a-hacker-when-your-site-is-down/

<comment><USER2> Umm... they don't think you're a hacker. They think you're a robot. Big difference, right?

<comment><AUTHOR> They also mention "automated source of requests". Sure, it's for robots, but it's also a nice way to saying "you're a hacker" for those who are writing automated scripts to do suspicious stuff.

<comment><USER3> I thinking you're reading too much into it. They even suggest alternative ways at getting the information you may be looking for using their APIs since they don't want bots scraping their site... it even says "seriously, we aren't mad at you."

But since you aren't a bot I would just send them some feedback to let them know you found a bug in their site logic, but maybe that's just me.

</comment></comment></comment><comment><USER4> Cracker.</comment>


Checking your website's position in search engines - <AUTHOR> http://positionly.com We were looking for a cloud-based solution to track our website's position in search engines and didn't find anything reasonable working/looking so we've built such a tool in our spare time. What do you guys think? Do you track your site's position in SERP somehow? <comment><USER2> Looking forward to an invite.

</comment><comment><AUTHOR> @bmnbug: about 2 months.

</comment><comment><USER3> Beta only, no invites?

<comment><AUTHOR> We'll be inviting users on a weekly basis. We need to make sure our architecture can handle the load.

</comment></comment><comment><USER4> When are you planning on launching this thing?</comment>


Apple spends $700,000 a year to keep Tim Cook safe - <AUTHOR> http://uk.businessinsider.com/apple-tim-cook-security-budget-2015-8

<comment><USER2> One way to look at this is that it's part of the CEO's overall compensation- and-benefits package. Instead of paying the money to the CEO and having her (or him) purchase a security service, the company can purchase it directly. And a large company like Apple probably just has part of their security staff protect him.

Losing a CEO is extremely disruptive to any company, and so this can also be seen as a business expense, similar to insurance protecting the company's headquarters building.

</comment><comment><USER3> _Losing a CEO is extremely disruptive to any company_

Losing a CEO is also a material event for a publicly traded company, and there's a whole ecosystem of lawyer who will file "shareholder" lawsuits if they think they can make the case you didn't spend enough to protect that CEO.

 _Company-paid term life insurance premiums in the amount of $2,520_

If what I pay is any indication, that's a _big_ policy.</comment>


Trump signs an executive order taking direct aim at social media companies - <AUTHOR> https://techcrunch.com/2020/05/28/trump-social-media-executive-order/ <comment><USER2> Active discussion:

[https://news.ycombinator.com/item?id=23347155](https://news.ycombinator.com/item?id=23347155)

</comment><comment><USER3> Imagine for a minute what will happen to Breitbart.com, Hannity.com, GlennBeck.com, FoxNews.com, RushLimbaugh.com and the rest of the right wing disnfomation media if this was actually enforceable. What's good for the goose, is good for the gander...right?

<comment><USER4> They're not user generated content.

<comment><USER3> They argued that they are... In court. So, no. You're incorrect. Not too mention, they all host and support user comments...</comment></comment></comment>


Iron Man Movie Review - Did it Suck? - <AUTHOR> http://www.jaguarmarketingrevealed.com/2008/05/01/iron-man-movie-review/ Get a non-spoiler review of Iron Man. Pre-screening was in theaters on Thursday evening before the official May 2, release. <comment><USER3> The Iron Man film is astounding; better than expected. It is bursting with comedy. The visual style of the film is similar to The Dark Knight. The gadgetry is amazing. For example, you'll love Tony Stark's multi-monitor desktop. And I've never seen Gwyneth Paltrow looking better. I'm expecting a sequel.

</comment><comment><USER4> Hard to believe. I don't know anything about this movie except for the poster ads, and every time I see one of them I feel amazed at how ridiculous the movie industry has become.

OK, a recommendation on Hacker News, that is quite something. But nah - <USER2> think I'll still pass for the time being. Maybe if I had a 12 year old son, it would be a different matter...

</comment><comment><USER5> I heard, "That was sick!" 3 times on the way out of the theater tonight.

It really was... sick.

</comment><comment><USER6> was surprised at the quality of the film. very entertaining.

</comment><comment><AUTHOR> Yes I agree, much laughs. I've never been a fan of Paltrow, but I must say she's lookin excellent in this movie.</comment>


Neural Networks as Ordinary Differential Equations - <AUTHOR> https://rkevingibson.github.io/blog/neural-networks-as-ordinary-differential-equations/ <comment><USER2> Early work on this approach is contained in Jean-Pierre Aubin's book on neural networks written back in'96 where he used differential equation/inclusions and control theoretic approaches to study neural networks, see here [https://www.amazon.com/Neural-Networks-Qualitative- Physics-V...](https://www.amazon.com/Neural-Networks-Qualitative-Physics- Viability/dp/0521445329/)

<comment><USER3> Wow, Jean-Pierre Aubin mentioned on first comment on HN, that makes me so happy. I have had him as a teacher 20 years ago, an incredible teacher, always grounding the maths into their history, and its social production, with descriptions of Banach life and others along with their motivations.

Thanks to Aubin, I did my PhD in AI a long time ago and am still working in the field now!

</comment></comment><comment><USER4> Is it just me or is the math here incorrect?

[https://imgur.com/a/QXUZerV](https://imgur.com/a/QXUZerV)

<comment><USER4> specifically, I don't see where the last step G(h_t) = etc. follows from

<comment><USER5> Yup, that's a mistake. Shouldn't have the +h term at the end.

</comment></comment></comment><comment><USER6> So the time term in these "neural" differential equations is the depth of the network. I see the connection between resnet and the differential equation solver. Basically, you're saying your final result is the end-point of a curve governed by a differential equation whose initial conditions are the input set. You train the equation's parameters in a fashion akin to how you train a standard neural net.

The thing is, with ordinary neural nets you have two arguments for how the thing works.

One view is you are taking inputs and projecting those into a high dimensional feature space and then drawing a separating hyperplanes between points in two or more categories. If you have a proper shaped hyperplanes, the results will tend to generalize.

Another view is you're doing something like logistic regression. You have a function and you're trying to reduce the distance between it and the "true classification function" that takes points to their proper category. You use gradient descent to minimize the distance between your function and this "real function" that you get through data.

So anyway, I am not sure how these intuitions apply to differential equation version. I'm not sure what other intuitions there are for why these equations should work.

<comment><USER7> > Another view is you're doing something like logistic regression. You have a > function and you're trying to reduce the distance between it and the "true > classification function" that takes points to their proper category. You use > gradient descent to minimize the distance between your function and this > "real function" that you get through data.

This viewpoint doesn't change when you switch to ODEs. The evolution of the system T seconds into the future is a (piecewise) continuous function of the initial state.

<comment><USER6> Me: Another view is you're doing something like logistic regression....

tnecniv: _This viewpoint doesn 't change when you switch to ODEs. The evolution of the system T seconds into the future is a (piecewise) continuous function of the initial state._

Sure, it doesn't. But it moves to ground where it seems hard to tell what's happening. Approximations of one function by a sum of set functions with variable parameters is a standard arrow in the mathematical "quiver" \- Taylor series, linear regression, etc. A neural net naturally is a complex ensemble of such approximations. You gain tremendous flexibility of representation but lose any idea of the shape of the curve that's involved.

With the ODE theory, you have a continuous function that is used instead of the parameters. It is hard for me to conceptualize exactly what's happening beyond that.

I mean, neural nets seem to able to approximate just about any complex classification function already.

So what I believe we need in recasting/representing/etc neural nets is:

1) Ways to speed training. Ways to update a trained system for small-ish changes in the system logic without needing a full retraining.

2) Ways to explain how a neural net reaches its decisions. Ways to tell a neural net to not use a given reasoning branch if it's using "garbage reasoning".

3) Ways to merge several neural nets that operate on related but not identical problems.

Etc.

I'm not sure if this model brings us closer to this.

</comment></comment></comment><comment><USER8> Isn't this also what the Julia team is trying to do? [https://julialang.org/blog/2018/12/ml-language- compiler](https://julialang.org/blog/2018/12/ml-language-compiler)

<comment><USER9> We are building tooling which will allow you to put together differential equations and neural networks in any way you please. This is just one way of putting the two together. The applications we were looking at are different, but it utilize similar tooling. We have forward-mode, reverse-mode, forward sensitivity analysis, and adjoint sensitivity analysis (the method mentioned here, which is actually from at least the 90's) implemented and tested with the DifferentialEquations.jl integrators. We had a recent paper exploring the timing differences between the different sensitivity analysis (gradient calculation) methods:

[https://arxiv.org/abs/1812.01892](https://arxiv.org/abs/1812.01892)

The neural ODE falls into the case where the number of parameters is large, and so the traditional adjoint methods seem to do best there when optimized. So in some sense, we aren't "trying" to do it, but have had library implementations for these gradient calculations for a few years now. The documentation is here: [http://docs.juliadiffeq.org/latest/analysis/sensitivity.html](http://docs.juliadiffeq.org/latest/analysis/sensitivity.html)

But we are heading in new directions with this as well. The traditional adjoints seem to do best here because of inefficiencies with tracing-based reverse-mode autodiffs like the kind found in Flux.jl or Autograd. Basically, those kinds of tape-based autodiffs rely on each operation being expensive, which isn't true for the internals of an ODE solver (but tends to be true for applications like neural nets where large matrix multiplications dominate). This means that the overhead of building the tape is really noticable and thus it doesn't do well in this application. Additionally, the tape is dependent on the input because the trace of the operations is dependent on what branches are taken. This means that, even if the ODE solver is fully optimized and every piece is JIT compiled, the backprop tape itself cannot be compiled and saved. Again, this isn't an issue for large matmuls, but this is another factor that comes into play when the operations are not sufficiently costly.

However, the blog post you link to discusses source-to-source AD as an alternative. Source-to-source builds the backprop code directly from the full source, doing both branches at the same time. This means you can AD the source and then compile it. This methodology solves the issues we found with tracing- based autodifferentiation for this application, so I'll be happy when we get to testing it. Zygote.jl isn't quite ready for source-to-source AD on the full DifferentialEquations.jl code, but it's getting close.

</comment></comment><comment><USER10> Very interesting - does this mean that you could also rephrase arbitrary differential equations as neural networks, then apply parallel computing to solve them?

Sorry if that question doesn't make sense; I'm not really clear on how ordinary differential equations are usually solved these days.

<comment><USER11> You could express an arbitrary (well-behaved) ODE as a neural network by discretizing it in timesteps, but you would not extract any additional parallelism.

In normal ODEs you can already compute each X_{i}(t)/dt in parallel, but you will still have to evaluate layer/time t completely before evaluating layer/time t+Dt as it feeds forward in both the NN and ODE case.

<comment><USER12> Yes and no: there is parallel time integration for ODEs which parallelizes using multigrid techniques.

<comment><USER9> Yes, but tests tend to show you need like >64 cores for things like parareal methods to do better than standard serial methods. So they exist, but aren't quite practical yet. Maybe a GPU-based one in specific cases can be interesting, but no one has been able to demonstrate an efficient enough code yet. It's definitely an interesting topic.

<comment><USER12> Thanks for the perspective on the actual performance of these algorithms. So yeah, as an algorithmic fact it isn't necessary to proceed sequentially, though perhaps not performant to proceed in parallel either.

Anyway, I heard AMD has 64 cores on a single chip so it may not be too long..

<comment><USER13> Neuromorphic Supercomputer With 1 Million Cores Mimics the Human Brain

      https://www.tomshardware.com/news/human-brain-neuromorphic-supercomputer-manchester,38027.html

</comment></comment></comment></comment></comment></comment><comment><USER14> Is it too much to hope that eventually it will be established that all the other neural nets are just extremely hard non-linear partial differential equations?

<comment><USER15> The language of PDEs is Turing complete so is the language of neural networks (with a non-linearity and arbitrarily many layers) so this is trivially true in general (they have equal computational expressiveness). But "compiling" neural networks to PDEs might be a hard problem that we can never solve, in general.

<comment><USER16> [https://link.springer.com/chapter/10.1007%2F11494645_21](https://link.springer.com/chapter/10.1007%2F11494645_21) seemingly states ODEs can simulate turing machines. Is the simulation enough proof ofit's turing completeness, and in what sense can PDEs be called a language?

<comment><USER15> Being able to simulate a Turing machine is the definition of being Turing complete. So that proof is sufficient.

In mathematics (and computer science) a language is just a set of strings, and a machine is just a language attached to a semantics. I.e. whatever symbols you need to represent PDEs, inductively generated by the axioms and inference rules of mathematics and theoretical physics (like for lambda-calculus: lambda, x0,x1,... '(', ')' and reduction and construction rules)

<comment><USER17> Simulation has a number meanings, depending on the field. I tend to loosely think of a simulation as a model with an acceptable level of error, but I am not a mathmatician.

<comment><USER15> This is true, thanks. As the other answer said, in this field we say given any machine M, "M2 simulates M" if M2 computes the same function as M i.e. given any input i, iff M(i) halts then M2(i) halts and M(i) == M2(i) otherwise they both loop. This can also be called "compiling" informaly: given any Turing machine, you can "compile" it to C (i.e. constructing a C program that simulates M) which means C is Turing-complete.

Note that this is a very handwavy definition. The "types" of input, output, and what it means to "compute" will depend on your language, semantics and encoding. (E.g. for lambda calcus "compute" means appying reduction rules until the machine halts, if ever)

<comment><USER17> I appreciate the explanation. Clearly in this context simulation does not equal approximation !!

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> How would this handle systems in which the dimensionality of the hidden layers is not equal to the input dimension, as is often the case? For solving the ODE you'd need to get at least 1 sample point, which might restrict the amount of information you can capture in such a network.

<comment><USER18> This paper is explicit that it only applies to sequences of ResNet layers, which happen to have the property that the input and output dimensionalities are equal.

It's a property of the functional form of stacked ResNet layers that allows the ODE layer to be used instead.

You are right that many networks will require at least some (and usually many) layers that change dimensionality. So ODE layers are not going to wholesale replace anything, apart from possibly submodules of a bigger network where the submodule is made up just of sequences of ResNet layers.

ODE layers will also have new applications, such as for irregularly spaced sequential inputs or outputs.

</comment></comment><comment><USER19> So this has become a problem in optimal control, and we have to boundary conditions (input/output data)?

Specifically, find a control function (so the weights of the activation function) which maps the system to your desired output?

Then there are also much better ways to solve two point boundary problems rather than just shooting forward. [0] Is a good place to start, (although its old).

[0] Numerical Methods for Two-Point Boundary-Value Problems. Herbert Keller.

</comment><comment><USER20> A couple of questions,

1) In the motivation for the adjoint method, is u given along with A and C? I don't see how to compute u^T B without u.

2) How do a(t), da(t)/dt, and dG(..)/dh relate to A, B, C, u, and v from the motivation?

<comment><USER21> Also was wondering the same thing. Also, the linked adjoint method tutorial discusses more general class of problems and it is not immediately clear to me how to map them to this linear equation version: here B is the unknown we want to evaluate and the constraint is set on B; in the pdf tutorial one wants to compute gradient_p f, which sounds similar than the formulation in the blog post, because we usually want the gradient (B?) to evaluate d_p f(x,p) at some point p (u?), but the constraints are given for g(x,p) = 0.

</comment></comment><comment><USER22> There may be different ways to more or less model the same thing. The trade- offs may be machine efficiency, human grokkability, prove-ability (mathematically analyzable), and accuracy (sometimes approximations are good enough, and gain on other features).

Perhaps related: Factor tables for AI: [https://github.com/RowColz/AI](https://github.com/RowColz/AI)

</comment><comment><USER23> Can someone tell me what I need to add to Firefox so that this:

\\( \mathbf{h}_{n+1} = F(\mathbf{h}_{n}) \

is displayed as the author obviously intended?

<comment><USER24> You may have Javascript disabled or be blocking the script that does the rendering, KaTeX. It works for me in both Firefox and Chrome.

<comment><USER23> Yes, it was a blocked 'cloud' script. Thanks to you both.

</comment></comment></comment><comment><USER25> repeat?

[https://news.ycombinator.com/item?id=18676986](https://news.ycombinator.com/item?id=18676986)

<comment><USER26> The first sentence links to that paper. This is presented as a high-level introduction to that and related papers/ideas.

<comment><USER27> Feels like aggressive advertising. Not the best way to promote your work. Let it stand for itself, if others see value in it, they will cite it.

<comment><USER28> Are you aware the author of the blog post is doing exactly what you say? Kevin is not an author of the original paper. He's seeing value in it, citing it, and synthesizing it.</comment></comment></comment></comment>


Show HN: Appenguin – Turn your website into an Android app - <AUTHOR> http://appenguin.com/ <comment><AUTHOR> Sorry for the delays. It's still not 100% automated, but it takes about 20 seconds to generate an Android Gradle project, build an apk, build a release apk, and push it with adb.

The next step would be connecting a form to it so everything is done automatically. Maybe push the app to Google Play through their API.

If you register, I'll email you an apk within a few hours.

Feedback appretiated, thanks, Yuri :)

</comment><comment><USER2> Thanks!!! turned my website to an app in minutes! Totally worth the money! Cheers Yuri.

For anyone who wants to see how it looks: [https://goo.gl/TVZ2Ej](https://goo.gl/TVZ2Ej)

<comment><AUTHOR> Thanks! glad you like it (")>

</comment></comment><comment><AUTHOR> The generation is now 99% automated, and I will try to send the apps as fast as I can.

There's also a paid version, with no ads and other goodies.

And lots of premium features coming soon. Stay tuned!

</comment><comment><USER3> I get an error when trying to use the submission form:

Check form address

This submission came from "appenguin.com/" but the form was confirmed for address "webapptoapp.com/"

<comment><AUTHOR> Oops. I got your details though. I'll just get rid of the form service.

Edit: fixed!

</comment></comment><comment><USER4> Just tried to sign up and I got an error on form submission. Looks interesting!

<comment><AUTHOR> Oops. I got your details though. I'll just get rid of the form service.

Edit: fixed!

</comment></comment><comment><AUTHOR> Sorry for the form fail. Everything works now :)</comment>


Pig brain kept alive outside of body for 36 hours for first time - <AUTHOR> http://www.dailymail.co.uk/sciencetech/article-5659235/Pig-brains-kept-alive-WITHOUT-body-time.html <comment><USER2> Interesting, though the write up is truly awful.

Of course, my first reaction was to wonder how much pain and terror that poor pig's brain was experiencing the entire 36 hours.</comment>


Contributing to OpenBSD - <AUTHOR> http://homing-on-code.blogspot.com/2015/04/contributing-to-openbsd.html

<comment><USER2> Not bashing on OpenBSD here, but if anyone has any insights why dhcp would lead to a panic.. I'd like to read that. It's probably interesting and could be a great write-up.

Edit: The mailing list thread has no results so far and suspects a use after free in the network driver? But.. gory details would be nice.

<comment><USER3> Hi,

blog author here, like I mentioned in the blog post one of the developers suggested that it might just trigger a re-use of poisoned memory. OpenBSD (especially on snapshots) enables a lot of 'hostile' development features - poisoning freed memory is one of them. Some of those checks are disabled on releases in order to limit performance degradation. Why could dhcp impact a kernel panic? It boils down to the driver. If my understanding is correct the re0 driver works on the kernel level and uses the mbuf infrastructure for allocating and using memory on the kernel level. The specific memory usage pattern the re0 driver has might lead to the kernel or the driver reusing already freed memory. This is of course just a speculation I have based on the information I included in the blog post and received off list from one developer. It's not confirmed in any way and just an informed guess on the developers part. I think dhcp is just an easier way to trigger the panic as the OS does lock-up on this box when set to static IP even if dhcp was never fired even once (though I don't get dropped to ddb then).

</comment></comment><comment><USER4> There are several ways to contribute to something as big as an OS.

Right now I'm contributing to Microsoft's coreclr trying to get it to build and run on FreeBSD, because I believe having a wide choice of software and software platforms will indirectly aid the project.

If a new project you see doesn't work on your platform, find out why and submit a patch containing your fixes. That will both make it easier for people coming along later and raise awareness of the platform amongst developers.

<comment><USER3> I completely agree. How cooperative is the upstream in regards to porting it to FreeBSD? I am looking at Dart for a while and the upstream doesn't even seem to be interested enough to provide a tarball that would be possible to download without going through the gclient tools (even chrome provided that :().

<comment><USER4> It's all on Guthub, it's all normal fork and sending in PRs. They are surprisingly cooperative. And by that I mean, I've never had my patched accepted so willingly. At the same time I've received good advice on style- guides and technical issues with my patches.

For errors I don't immediately see a resolution for, I've created issues and usually that has either been picked up by the .NET-team itself or they've provided me enough feedback to work it out myself.

When submitting small patches nothing special is needed, but for bigger patches you need to sign a "contributer agreement". Which is done all online, automatically and in a matter of mouse-clicks.

The .NET-team has really done a good job here, especially considering how they said "they were really new to this (OSS thing), so please bear with us" when this whole thing was first announced.</comment></comment></comment>


Designing Killer Web UI Layouts With Freebies – Ultimate Guide - <AUTHOR> http://www.hongkiat.com/blog/killer-ui-with-freebies/

<comment><USER2> These PSDs look great, but any advice on turning them into functional websites?

<comment><AUTHOR> Not exactly I think it just comes with practice! Looking at examples and inspiration galleries help you put all the pieces together.</comment></comment>


Spotify is bracing itself for an almighty battle with Apple - <AUTHOR> http://qz.com/398356/spotify-is-bracing-itself-for-an-almighty-battle-with-apple/ <comment><USER2> I've never understood how Spotify managed to strike deals with the record labels that allowed it to pursue a successful all-you-can-eat model. I know that Microsoft had tried similar models in the past but they never came close to offering the vast library that iTunes has, whereas Spotify seems comparable to iTunes. Does anyone know?</comment>


Notify Mee - <AUTHOR> http://www.notifymee.com/ <comment><USER2> _Notify Mee performs a very simple but invaluable task:_

I may be alone here, but I get rubbed the wrong way when people presume to tell me how invaluable [definition: having incalculable monetary, intellectual, or spiritual worth] their service is. Especially when, you know, it's not.

That whole first sentence can go.

</comment><comment><USER3> <http://dingitsup.com/> is a similar service, but can also text or tweet you in addition to emailing.

<comment><USER4> The whois on dingitsup does not inspire much confidence.

<comment><USER5> Who puts real info in their whois record? Just because I have a website doesn't mean I want loonies showing up at my house.

<comment><USER4> I do, and so do most other reputable businesses.

Loonies don't usually use the whois to show up at your house, they can do so regardless.

</comment></comment></comment></comment><comment><USER6> I feel this should be a browser feature rather than having a website. One has to search for the book mark and then provide email id, enter the captcha. Instead of these whenever there is HTTP 404, browser itself can give a icon in the address bar to keep polling the website. Firefox plugin may be?

</comment><comment><USER4> Hm. Nice idea but like the 5 slice toaster I wonder how many times in a year the sites that I use are down (well, other than HN of course, which crashes at least once a day and then takes several minutes to come back up again).

You'd still have to poll your email to see that whatever it was that you were looking for is back up, some kind of IM coupling would seem to be a more convenient vehicle (or a text message to a cell phone).

Still, it's a nice idea even though the current design looks like an email address harvester, no privacy policy and no 'terms of service' as far as I can see.

<comment><USER7> HN itself is kinda covered, <http://hnstatus.net>

</comment></comment><comment><USER8> I've tried using it in the past, but it wasn't very helpful. The site I wanted to visit wasn't "down" according to notify mee, it was showing a very friendly and approachable server error page.

If notify mee can't magically figure out that the site I want to visit is down, it doesn't do me much good. (I say magically, because I have no idea how they could figure that out if the site isn't sending the correct response headers)</comment>


Announcing ncurses 6.1 – now supports 24bit RGB "direct-color" - <AUTHOR> https://www.gnu.org/software/ncurses/ <comment><USER2> Didn't they say that they weren't going to add it some time ago? [https://lists.gnu.org/archive/html/bug- ncurses/2014-01/msg00...](https://lists.gnu.org/archive/html/bug- ncurses/2014-01/msg00008.html)

Glad they've finally come to their senses! (Although I understand the apprehension.)</comment>


Orbital Sciences Space launch at 10:55am Eastern Time [video] - <AUTHOR> http://www.nasa.gov/ntv

<comment><USER2> Funny how Orbital seems less known than SpaceX, even though they appear to be significantly larger and more experienced company. I didn't even know that they were doing a launch, and now I missed it.

<comment><USER3> As against Boeing, Lockheed, etc. NASA has always used commercial companies to build it's rockets. The short version is that SpaceX is the first company to do so on properly commercial terms, as against cushy cost-plus contracts with the development costs all underwritten by the government up front.

</comment></comment><comment><USER4> Are they still using those Russian rocket engines?

<comment><USER5> this is the second launch of the Antares rocket

[http://en.wikipedia.org/wiki/Antares_(rocket)](http://en.wikipedia.org/wiki/Antares_\(rocket\))

<comment><USER4> Ah yes I remember, they use a modified NK-33/34 and once the stockpile runs out the Antares rocket has no obvious engine replacement.

EDIT: I hope I don't sound negative, I am probably too starry eyed for SpaceX and their merlin engines. I geek out how they built almost everything themselves.</comment></comment></comment>


Ask HN: AWS Lambda vs. IronWorker - <AUTHOR> Hi all,
I'm looking into AWS Lambda and trying out it's competitors/alternatives.
I came across IronWorker and found a blogpost (http://www.iron.io/aws-lambda-vs-ironworker/) from a year ago on the Iron.io website. This post was written by Travis Reeder (CTO of Iron.io) so it's subjective. Also, a lot has changed in a year for AWS Lambda.
Have any of you experience with both platforms and what are your experiences?
Thanks in advance. <comment><USER2> Just at a quick glance, I can tell you that AWS Lambda now has:

\- Scheduling

\- Python support.

However, I've not used Iron.io so can't chime in there sorry.

<comment><AUTHOR> Yea that's true, since a few days it also supports VPC. Im interested in finding out the particular use-cases where one of them is better.</comment></comment>


No Mario's Sky - <AUTHOR> https://asmb.itch.io/no-marios-sky <comment><USER2> This is genius. It's even better than No Man's Sky!

<comment><USER3> Hey now, that isn't nice. This is _much_ better than that turkey.

<comment><USER4> Imagine having the last few years of your life publicly defecated on because you opted to ship instead of delay.

Ryan Holtz (of Minecraft/Mojang/EA Tiburon fame) was on the release team for Superman Returns. The game (and especially the parts he worked on) was very competent; it just didn't mesh well as a whole. He's understandably really sensitive about the whole thing, even years later. It would be good to keep in mind that there are human beings with emotions behind these games.

NMS underdelivered, but it was still a beautiful game. In this era of DLC-as- bugfixes, I wouldn't be surprised if many of the features people complained about were implemented later.

<comment><USER5> So you're saying you feel bad for the person who chose to lie in exchange for millions and millions of dollars?

By any chance, are you yourself rich? I can see how that would make it easier to sympathize with someone like Sean Murray. If not, then why would you feel bad for someone who got paid millions and millions of dollars for lying for years? Isn't having a lot of money a good thing?

<comment><USER4> When one man ships an incomplete game foir $60, he gets crucified by the public.

When EA or Ubisoft ships an incomplete game for $60+, people complain, and buy anyway, waiting for the patch.

Do you see what I'm getting at here?

<comment><USER5> Those are some very elaborate strawmen you are constructing there. Is that what you're referring to?

How come whenever someone, like me, reveals a factual, truthful, and well- argued opinion, they are criticized by people like you?

Do you see what I'm getting at here?</comment></comment></comment></comment></comment></comment>


A Tale of Siri and My Home's Energy Usage - <AUTHOR> http://blog.scalyr.com/2017/07/nest-siri-scalyr-little-raspberry-pi/ <comment><USER2> _I'm one of very few homeowners in the world with real-time access to information about my HVAC system's energy usage._

Anyone with an Ecobee has the same real-time information and graphing for free. It also integrates local outdoor temperature and humidity if you specify your location.

[https://www.ecobee.com/2015/08/feature-friday-home-iq- system...](https://www.ecobee.com/2015/08/feature-friday-home-iq-system- monitor/)</comment>


Proposal for Ephemerons in Scheme - <AUTHOR> http://mumble.net/~campbell/tmp/ephemeron.txt <comment><USER2> Can someone explain the differences between this and weak references in a VM with garbage collection?

<comment><USER3> To be pedantic, scheme is garbage collected, and several use a VM.

PLT already has weak references, and the author assumes the Scheme implementation already has them.

As far as I can tell, this is somewhat like a weakHashMap, except each ephemeron only handles one key value pair.

<comment><USER4> PLT already has ephemerons too:

<http://docs.plt-scheme.org/reference/ephemerons.html>

<comment><USER2> Thanks! That link says it pretty clear: _In particular, an ephemeron can be combined with a weak hash table (see Hash Tables) to produce a mapping where the memory manager can reclaim key–value pairs even when the value refers to the key._</comment></comment></comment></comment>


Node.js and the Struggles of Being an EventTarget - <AUTHOR> https://www.nearform.com/blog/node-js-and-the-struggles-of-being-an-eventtarget/ <comment><AUTHOR> I'm genuinely curious, what are some use cases that would require EventTarget vs EventEmitter on Node.js?</comment>


Inside Wayback Machine, the internet's time capsule - <AUTHOR> https://thehustle.co/inside-wayback-machine-internet-archive <comment><USER2> If you're in San Francisco this Wednesday, check out their annual bash: [https://blog.archive.org/2018/08/20/save-the-date- building-a...](https://blog.archive.org/2018/08/20/save-the-date-building-a- better-web-internet-archives-annual-bash/)

</comment><comment><USER3> Always good to pause and reflect on the ephemeral nature of knowledge on the www. I've always admired the Internet Archive's Sisyphean mission to preserve some piece of it.

ps those statues of internet saints occupying the old benches of the former church/current IA hq are neat and kinda disturbing.

<comment><USER4> At the same time, the past is now fully documented. The knife cuts at both sides.

</comment></comment><comment><USER5> I very much appreciate Wayback Machine's work and would like to support them by offering our SGML software for free (see contact info on [http://sgml.io](http://sgml.io) or PM).

SGML can be used as swiss army knife to perform all kinds of difficult HTML parsing, manipulation, and preservation tasks since it is using classic DTD grammars for your HTML flavor at hand, rather than having a particular HTML grammar hardcoded. For example, see our HTML 5.1 DTD at [1] (which can be used with any SGML software freely anyway).

In today's dark age of the web, we're loosing content daily as classic web sites are shutting down.

[1]: [http://sgmljs.net/docs/html5.html](http://sgmljs.net/docs/html5.html)

</comment><comment><AUTHOR> Does anyone know if they take kindly to visitors? I'm always looking for things to do when I'm in SF when I have a few hours to spare and this interests me.

<comment> jonah-archive We have public tours nearly every Friday at 1pm! Ping us beforehand to let us know you're coming: [https://archive.org/about/contact.php](https://archive.org/about/contact.php)

</comment></comment><comment><USER6> I wonder if the Wayback Machine people are using a (potentially more modern) version of the AOPIC algorithm to decide what to archive. I wrote an article about that algorithm (which is similar to the original PageRank, but simpler IMO), and stated that a service " _like_ the Wayback Machine would probably use something like AOPIC." It would be nice to remove that first _like_ from the sentence!

[1] [https://intoli.com/blog/aopic-algorithm/](https://intoli.com/blog/aopic- algorithm/)

<comment><USER7> No, Heretrix doesn't really do any ranking as it crawls, it's all up to a cleverly chosen seed.

AOPIC looks to me like it's roughly the same as Yahoo's iterative pagerank algorithm, but I didn't look at it that carefully.

</comment></comment><comment><USER8> Anybody know of something like this that I can use for personal archiving?

<comment><USER9> [https://wallabag.org/en](https://wallabag.org/en)

If you run your own, make sure you turn on "Download images"

<comment><USER10> Wallabad isn't quite suitable for Archival operation last I checked since it doesn't present or save the original webpage.

That's one of the major points why archive.is/wayback is popular; you get the exact same page as you get in the browser. Perfectly for archival.

</comment></comment></comment><comment><USER11> Love way back machine. An exploit of modx recently resulted in losing a website that I maintain. Remembered the way back machine...all content plus my ass saved.

</comment><comment><USER12> The Wayback Machine is an archive, not a time capsule. Very different things.</comment>


European Cities Test Measures To Control Tourist Flows - <AUTHOR> http://www.spiegel.de/international/business/european-cities-test-measures-to-control-tourist-flows-a-1104903.html <comment><USER2> This (ridiculously cheap air travel for short city breaks) is more of an issue in Europe than in the US. In America air travel is still, comparatively expensive. In Europe there is much more competition among airlines to serve the super cheap <$10 flights. The US is also much more spread out. I can fly to 50-100 European cities from London in under 2 hours - from LA I have fewer than five options and the prices will be 10x what Ryanair or Easyjet charge.

<comment><USER3> I know these budget airlines charge fees for every single 'amenity' in the very broad definition of the word, but I've always wondered about the economics of these very, very low-priced tickets you see in Europe.

<comment><USER4> Small airports make it work. Ryanair's model is to make small airports dependent on them, and threaten them evermore to make sure that its as cheap as possible for them.

Additionally, they were really good at hedging oil prices at good prices. (Except in 2011-12).

Finally, all of the pilots are contractors, as are many of the flight attendents, which reduces the fixed costs associated with the (legally- required) staff.

FR are also willing to kill their own margins to break competitors, which means that competing is hard.

</comment></comment></comment><comment><USER5> I have to admit that I am guilty of swelling the numbers of tourists, and I enjoy seeing different cultures in real life. But I can understand that in cities like Barcelona and Berlin the situation has gone over the top.

The solution could be simple - tax tourism related businesses more. Tax plane tickets, AirBnb hosts, hotels, restaurants, car rentals, etc, but use something like congestion pricing. If the tourist is housed in an area that benefits from tourism, tax it less, or even sponsor a small part of the price from the taxes collected elsewhere. That is for the short term shaping of trends.

For the long term, the problem will fix itself. When prized local culture doesn't live up to par, then tourism will decline in that region.

But there is also an opposing viewpoint - tourists or locals, we are all people, living together in this small boat we call Earth. Worrying too much about keeping cultures separated could be seen as a form of conservatism and nationalism.

<comment><USER6> > Worrying too much about keeping cultures separated could be seen as a form > of conservatism and nationalism.

Worrying too little could be seen as colonialism.

</comment></comment><comment><USER7> With low gas prices, and new budget airlines coming up every month, this is going to be a fascinating traffic problem to observe. Every city wants the tourist income, but not the tourist baggage :)

<comment><USER8> new budget airlines you say? like whom?</comment></comment>


The dark side of professional skateboarding. - <AUTHOR> http://www.jenkemmag.com/home/2013/07/16/the-marc-johnson-interview/

<comment><USER2> I love this part -

"Maybe people get tired of building houses for other people. Maybe people want to build their own houses. They sure as shit have the necessary experience. More houses should be built by people who've been through the experience..."

I think that's what a lot of programmers/marketers/entrepreneurial spirits feel. Eventually, we want to build our own thing.</comment>


Ask HN: I don't need money, so what's the benefit to Y Combinator? - <AUTHOR> Say I'm developing some awesome new thing, but I've built it on my own.
I don't need money, but I wonder if it's in my interests to join YC anyway. Trouble is I'm not sure I see the benefits outside the money?
Can someone point me to the benefits of being in YC apart from the cash? <comment><USER2> The network? "YC doesn't end on Demo Day. We and the YC alumni network continue to help founders for the life of their company, and beyond." [http://www.ycombinator.com/](http://www.ycombinator.com/)

<comment><AUTHOR> Is this real or marketingspeak? Are there YC companies here who can describe what the actual benefits are of being a member of YC?

My understanding of all venture capitalists is that they like to sell their business expertise, contacts, network, but does this really amount to anything ordinary they just want a slice of the company?</comment></comment>


Ask HN: What kind of CPMs are you getting for your ad-supported site? - <AUTHOR>

Was curious what CPM rates are these days? If any of you have ad-supported sites, would love to hear what sector/industry and approx what kind of CPMs you're showing. <comment><USER2> I am not sure what kind of sites you are interested in (social/media/verticals/etc.) but CPMs for online news/commentary and some online communities have been really hurt by an excess supply, and the fact that many companies have pulled back on marketing. That's one of the reasons that house ads, AdSense, and ad networks are showing up when you visit many of these sites.

Federated Media currently lists CPMs for TechCrunch between $23.40 and $26, based on three largish display types (see [https://advertisers.federatedmedia.net/explore/?site=techcru...](https://advertisers.federatedmedia.net/explore/?site=techcrunch)). The Mommy Blog is considerably less according to the FM rate card -- $4.55 for a square button up to $18.20 for a medium rectangle (which it says is sold out -- no inventory left).

FM takes a cut, of course, but handles the nitty gritty sales stuff that a lot of blogs don't like to deal with.

<comment><AUTHOR> Thanks for the in-depth response. I always wonder how close the actual ad deals are to the prices mentioned on the FM rate card. If the Mommy Blog is really selling out $18 CPMs, that's fantastic.

<comment><USER2> I think the key thing to note about these two examples is they are both popular, established brands in niches that advertisers are willing to buy against. Newcomers won't command such high CPMs, and neither will sites focused on other topics. I remember someone discussing why Consumerist would be so hard for Gawker to sell -- what vendor would want to put their products next to content that's all about criticizing greedy/insensitive/clueless corporations? Gawker did end up selling it, but I wonder if it was at the price that they wanted.

</comment></comment></comment><comment><USER3> We had a hard time making sense of our ads. We're only pulling in $1.50 cpm. It hurts!

<comment><AUTHOR> We have some experimental Google Adsense running on our consumer site (www.newscred.com), and we get around 1.80 CPM. Which is better than I expected, but still pretty shitty.

We've tried making the ads look less gross so they are more inviting, and some minor tweaks have helped.

<comment><USER3> Wow your site looks great. What sort of CMS are you using to manage all that content?

</comment></comment></comment><comment><USER4> <http://news.ycombinator.com/item?id=581085></comment>


This is Why Learning Rails is Hard - <AUTHOR> https://www.codefellows.org/blogs/this-is-why-learning-rails-is-hard <comment><USER2> Doesn't a chart like that apply to virtually all languages? You have command line of course, a package manager, the standard library, etc.

EDIT: Even the supposedly Rails-specific things on the right are very general other than Ruby & Rails. VCS? Text editor? How is that Rails specific?</comment>


Zaagel marketplace: Travelers make money by delivering items that people ordered - <AUTHOR> http://www.zaagel.com

<comment><USER2> How does this work?

<comment><AUTHOR> simply if you r a traveler and have a place in ur luggage. visit zaagel.com and see what products are wanted by others. if you see something that you can buy and bring with you, then check its price on the provided link and add ur commission and then add an offer.

once ur offer is accepted, Zaagel collects you money and hand it to u when u deliver the items

the site is in its beta version so plz give it a try and give us ur feedback as a traveler or as a person who order products

<comment><USER2> Interesting!! I Haven't seen anything like this before - so the question is does it work??

<comment><AUTHOR> we started in Egypt where lots of people try to purchase products form the U.S. and Europe. The cost of getting any product to Egypt is very high. The same thing apply to other countries. When we launched the website, we got over 60 orders. The travelers who delivered those items got around $400 in commission each. We wanna make our service reliable to buyers and travelers so we ask travelers to buy products from their own pocket and we collect their money and commission from the buyers in advance to guarantee payment.

So far we found more demand on purchases than expected but we still need to spread the word among travelers specially between U.S. and Egypt to be able to deliver more products.

Would like to get more feedback from you guys in this thread !!</comment></comment></comment></comment>


Why I'm Deleting All My Old Tweets - <AUTHOR> https://www.wired.com/story/im-deleting-all-my-old-tweets <comment><USER2> I'm upvoting this because I think there's an interesting discussion to be had.

But I disagree with both the crux and the primary reasons for the argument. A few reasons.

\- If we're hiding past indiscretions, that only further de-normalizes having indiscretions. We're already so past-the-fold as far as I'm concerned in terms of how harshly we judge people for history long past. I'm not a believer of "everything should be public" by any means, but the authors examples were unconvincing. I certainly have some silly posts on old gaming forums where if someone doxed me they could find them, and I'd probably cringe a little and shake my head. But that's part of who I was, and I feel mental dissonance at anything past simply accepting that in stride.

\- He worries about his son reading his tweets. As a son who never saw past his father's "I'm a professional adult" facade, I have a perpetual sadness that we never connected as _people_, that he never let me see past the veil at the flawed and very human man behind the curtain. I can't speak authoritatively on how some other father/son relationship should work, but I can say that for me, a twitter history would have done a lot to humanize and bring me closer together with mine.</comment>


Dalvik VM Internals  - <AUTHOR> http://sites.google.com/site/io/dalvik-vm-internals

<comment><USER2> Looks fascinating, but I don't have an hour to spare. Anyone got a link to something written?</comment>


Show HN: Sensorize – A memory game - <AUTHOR> https://itunes.apple.com/us/app/sensorize-insanely-hard-memory/id1043909883?l=pt&ls=1&mt=8 <comment><USER2> Android version?

<comment><AUTHOR> We're working on it! I'm so sorry we couldn't launch an Android version together with the iOS one.</comment></comment>