Ask HN: Will  you or anyone use this service?  - <AUTHOR>

One liner  :  Build Linux servers on  cloud platforms(aws,racxkspacecloud/slicehost etc.) to your specification.
Workflow :
1. You provide your specifications(linux distro, web server, app server, database server, other software) for your Linux server and the cloud platform you want it be build on.
2. Receive a quote of price and expected delivery time for you specific build.
3. You agree on price / delivery date/time
4.  Build server for your specification
5.  You verify
6.  You pay.
Idea is to help  potential customers to save time at least on the following but not limited to
1. Installing required software and its dependencies 2.  Hardening for security 3 .. etc...
 I still need to figure out how to deliver the custom machine image after building it on racksapcecloud/slicehost. On AWS it is straight forward <comment><USER2> _I still need to figure out how to deliver the custom machine image after building it on racksapcecloud/slicehost._

"Pick this option in your slicehost setup. SCP this file into your home directory. _sudo go-get-a-coffee.sh_ and come back in twenty minutes."

Alternatively, the same thing delivered as a Chef script or what have you. Capistrano and Deprec used to be a fairly good option for getting a generic Rails stack ready on Ubuntu, for example.

As to whether I would pay for this: heck yes, but there is a fairly narrow window for it. When I'm doing green field development, like where I am for a very small window now for Appointment Reminder, I can make extensive changes to my infrastructure without paying ginormous switching costs. After that site goes live for the first time, though, I can't use your service until the next time I launch a product, because I can't trust that you understand my needs intimately enough to handle a migration.

Why would I pay for this? Fairly straightforward: I am not a professional sysadmin -- I am a developer who knows a few things about a few things because he has to. I know I'm going to burn two or three days tweaking my configuration prior to launching AR, even with productivity enhancers like Deprec to use. I will probably make at least a few consequential errors which will lurk until they bring the site down some weeks later, and create technical debt against later upgrades. I do not enjoy configuring servers. Blocking off three days to tweak an Ubuntu install prevents me from writing a two line email to a satisfied client and booking a consulting engagement worth several thousand dollars.

Incidentally: you're going to hear a lot of feedback from developers about how you're gouging them if you charge reasonable prices for this. They are not your customers.

</comment><comment><USER3> YES. I'm a developer, not a sysadmin, and there's always that little voice in the back of my mind wondering if I've missed some obvious security hardening thing, etc. I know I should just get better at this, but the list of things I should get better at is about 10x as long as I have time for.

</comment><comment><USER4> It would depend what the scalability of your service was - if your service set up one server, and 3 days later I need 40 more identical ones up in the next half-hour, without having to manually re-enter all the settings, would your service be able to handle that? I think that would probably need to be in the minimum viable feature set.

Even with that said, I think that I would normally prefer to vertically integrate that type of work into a startup (incremental adjustments to the deploy script during dev, technical founder uses the deploy script during early days, when the business grows, a dedicated sysadmin will be required anyway) - but that does depend on the price and exactly what is offered.

If you pitched it as: * Our core business is to license common deployment scripts (i.e. the scripts are commercial software, and you sell a license to use them). * For a small fee, you can use our web interface to help you generate a customised version of our script - or you can edit the script yourself. * For a small fee, we can also keep track of all your deployments and deployment scripts, and run your deployment scripts for you on demand via a web interface.

then the value proposition might make it worthwhile if the price was right.

</comment><comment><USER5> Yes, if the price is right, and the specification interface is easy.

The interface needs to be significantly less effort than writing/modifying a Stackscript (<http://blog.linode.com/2010/02/09/introducing-stackscripts/>)

<comment><AUTHOR> Thanks for sharing the link tsycho

</comment></comment><comment><USER6> Well a couple of interesting points here.

1\. Either you have to host the server on your account, or I have to give you my username and password to my hosting account. This might put people off so just keep that in mind.

2\. Also I don't see a reason to limit yourself to cloud platforms. Hosts like linode/dreamhost/etc are pretty popular these days and service like this would help a startup with limited/no knowledge in server platforms.

3\. I also wouldn't limit yourself to just Linux. If your familiar with windows systems you might make a little more money on setting up MSSQL, Exchange, and IIS (And if I recall correctly Rackspace now offers Windows in the cloud).

4\. Also think about upkeep of the servers as well. If someone is going to pay you to set it up, they will likely pay you to maintain it.

<comment><USER7> I believe Rackspace has affiliate/reseller programs that might take care of the user/pass issues. You could also just hand over the keys to the server, not the hosting account.

<comment><AUTHOR> I did signup for affiliate program with Racksapce. I had a brief chat with a customer support agent but he is not aware of anything to deliver my custom build machine image to other customers. May be I have to talk to someone else at Rackspace.

</comment></comment></comment><comment><USER8> I'd argue that the idea has merit - because that's one of the problems heroku and google app engine solve. The fact that it's complete straight forwards on EC2, for both sales and imaging is another testament to the idea's merits. One thing/angle you might go for is the scaling aspect - I can run apt-get all day to setup a single machine, but as a developer, and not a sysadmin, some of the finer details to setting up a more complex, multi-machine setup with a coule mysql instances, an apache box or two, may be lost on me.

Hypothetically, I would pay for a way to easily grow my single VPS into a multi-machine config.

<comment><USER5> Heroku (and others that I haven't tried) solve this well, but they are expensive if you run a large site.

If I know that I want an obvious setup such as a reverse proxy + load balancer + multiple rails (or other) servers + a master/slave db setup on linode/slicehost/MT to save server costs, but do not want to do the sysadmin work, and maybe do not know enough about security etc......then OP's tool seems quite useful for me.

Ideally, I would like an interface that takes in parameters like the above, and generates scripts (such as stackscripts, or some similar alternative), that would just run and configure the systems.

Or in other words, give me a Heroku like interface to configure Linode/MT/slicehost :)

I would be willing to pay a reasonable upfront fee for it, though the price should obviously depend on the complexity of the configuration. I would also be willing to pay for monthly support. From a developer's perspective, I think this is basically outsourcing the sysadmin work which most people don't seem to want to do/learn, even though they realize how important it is for their site.

</comment></comment><comment><USER9> If you're "just" installing server-side software, then maybe if the price is right.

If you are also offering to get a working uncustomized copy of popular software installed (e.g. Wordpress) then that's more interesting. Some bits of software need a few manual tweaks/config changes to get working. This is especially true for when you move away from Apache and to nginx. Nothing rocket sciency, but still time consuming and so could be outsourced.

<comment><AUTHOR> Of course the installation /setup of software/application like Wordpress,Joomla,Drupal etc. are in my list

</comment></comment><comment><USER7> I think that abstracting away as much as possible and providing "everything as a service" is definitely the direction the cloud companies are all going (Rackspace included) so you're on the right track there.

Not knowing anything about the market, there might be opportunity in building large custom clusters instead of just single servers, and use Open Stack as a base. Might make it look like a juicy acquisition for someone.

</comment><comment><USER10> NO.

Your target audience are developers. And it's already super easy to do what you want done with pre-built images, yum etc. Then there is a trust issue with someone who's new.

If you want to go ahead and provide a service to setup distributed architectures using Nutch/Hadoop etc, you have an audience, but it's a lot of work and there are people already doing it.

<comment><USER11> YES. Not every developer (or a technical startup founder) is a sys admin or wants to get deep into server provisioning/software installation issues. This is orthogonal to what they are trying to build (at least in the beginning). I believe your idea has legs. Pursue it.

</comment></comment><comment><USER12> I don't know about the providers you list, but Linode has something called StackScripts, which gives you the possibility to easily build a new machine with all the software etc you want installed. They've got ready StackScripts for a lot of the common setups.

I'm not sure why I'd pay another service for this. What would the added value be?

<comment><USER13> Ditto'd regarding Linode, with some notes on why we'd hesitate: While we as an enterprise love moving things to Linode, or just generally "out," I don't know if many in your planned market would be okay with someone else setting up their systems.

If you're going for bigger group (which will mean larger deploys with far larger payments), make sure you're bonded, can prove security, that you're not running virtualization on top of our systems, etc etc etc. Your primary benefit as I see it is currently convenience, but trust is just as valuable.

<comment><USER14> > I don't know if many in your planned market would be okay with someone else > setting up their systems.

This is what I'd be concerned about. I imagine there is a very small market in between the types of server users that have no idea what a kernel is and that it is configurable and the types of users in the 'enterprise' that either already have these automation scripts built themselves, or have strict enough security practices that prevents them from going outside their department for this.

</comment></comment></comment><comment><USER15> I think it's a great idea. As aitoehigie said, there's a lot of less technical developers out there that don't want to handle that stuff, but want something more custom and/or powerful than a base vps or managed hosting service.

Just find a way to whitelabel it yourself.

<comment><AUTHOR> Thanks.

Sorry for my ignorance, can you or someone tell me what you mean by 'whitelabel'

<comment><AUTHOR> Got it: Thanks to wikipedia

<http://en.wikipedia.org/wiki/White-label_product>

</comment></comment></comment><comment><USER16> You're the human Fabric (<http://docs.fabfile.org/0.9.2/>)!

I'd use your service if it was reasonably priced (and I hadn't invested a lot of time into automating this myself).

The fact that I have taken the time to automate this workflow totally gives your idea merit though.

Make a nice interface where I can select the most common options and allow me to save it for future use. Also make me add a public key, and send me a confirmation email containing an entry for .ssh/config when it's all up and running.

</comment><comment><USER17> I definately would pay for that. I am a web dev first and foremost, I usually dont like sys admin tasks, so I would gladly outsource that aspect to more professional handlers

</comment><comment><USER18> Yes, I would pay an upfront cost but not a recurring monthly thing.

For example, I have a LAMP project I want to run on a VPS and will only access the server over SSH. You could go in and rip out all the crap like FTP servers, mail servers, close unneeded ports and tune it for Apache+PHP and MySQL and I will pay $20-$40 for that.

In 6 months, if my app has taken off I ask if you can update/patch/harden the machine again for $40-60.

</comment><comment><USER19> I would not use that currently, because I know how to use chef either for me or my customers; so basically this is almost free to configure a new machine now.

But this is not for everyone neither I think, so I definitely think there is room for your service somewhere in between!

Small point: I would definitely expect such as service to provide passwords in an encrypted manner (as you need to communicate them at the end I guess).

</comment><comment><USER20> If the price was right, I'd very much consider it. Server setup, hardening, etc. is just something I don't want to think about or spend time on. I'd rather spend the money for 3 hours of someone else's time than spend 2 days trying to figure it out myself.

Caveat: you'd have to have ballpark figures on your site. I have this thing about consultants/firms not saying what their rate/price is up front.

</comment><comment><USER21> There are 2 things involved in this. 1. Setting up the initial server involves quite a bit of labor. 2. It involves skill. If your customer is trying to avoid the labor but has enough skill to maintain it later then this makes sense. If he doesn't have enough skill to maintain the server after the initial setup then this is useless. He can let you manage the server as well.

</comment><comment><USER22> I'm on the fence. If I hadn't of gone through the process of learning how to set up servers myself, I definitely would have used your services. Now I know how to do it, though perhaps not efficiently, and perhaps not in the most secure, optimized way, you'd have to do a good sales job to get me interested. I'd at least take a look at your website's home page though. :-)

<comment><AUTHOR> I promise I'll have my web site up this weekend. Hope I can push you over the fence with that.

</comment></comment><comment><USER23> I've literally just now been looking for a freelancer to do this for me... precisely because I'm a developer who knows some things about systems, rather than an actual sysadmin. So yeah, I muddle through, but it takes 3x as long and is probably only 75% as good as someone who does it all the time.

</comment><comment><USER24> Sounds like dotCloud - or at least their "end goal", as I heard it pitched at SUS2010.

</comment><comment><USER25> Maybe. It would really depend. I'm definitely up for not having to bother with server configuration issues. But I can imagine this not helping that much or introducing extra hassle unless you managed to do it really really well.

</comment><comment><USER26> Sorry, no. This is what Puppet and Chef do, and they do it very very well. In addition, with companies like devstructure, it has become very easy to automatically generate a Puppet/Chef manifest.

<comment><USER27> Puppet and chef help with the doing, but not with the knowing what to do.

I'm a developer who only knows enough about sys-admin to mess around in /etc when needed. Knowing the sys-admin specific knowledge is beyond me, that's what you'd be paying for here.

Even to the point that what's delivered is a set of Chef recipes that are easy to run.

</comment></comment><comment><USER28> I like it ... Could have used this service a couple weeks ago.

</comment><comment><USER29> You're pretty close to something I've been hankering for -- a cloud service similar to EC2, except with a different set of strengths. Amazon's strong point is being able to scale up and down easily. A lot of businesses don't need that; they just want to be able to move some or all of their operation to a cloud. And they don't necessarily want to host their own private cloud. They want to rent one, like you do with EC2, but without the "you can scale fast" premium that Amazon charges.

There are other services (Grid-something, etc.) but last I looked, they were still expensive and had other drawbacks. This needs to be _simple_ , and simpler than most of what I've seen. You need to be able to get onto the boxes if you need, but also manage them with a webapp.

Bonus points: implement security features like virtual networks in my private cloud, so that I can keep my DB servers off of the internet (even though they're technically on the internet). I want to do this easily and without hand-configuring the boxes. Amazon has something like this, but the last time I looked, they were the only ones.</comment>


Drone Delivers Medicine to Rural Virginia Clinic - <AUTHOR> http://www.wsj.com/article_email/drone-delivers-medicine-to-rural-virginia-clinic-1437155114-lMyQjAxMTI1MzE1NzIxMDc2Wj <comment><USER2> The drone only travelled a mile, but it is still interesting. The article did not mention if the drone was flying autonomously or by remote control.</comment>


The Power of Crossed Brain Wires: Synesthesia makes ordinary life marvelous - <AUTHOR> http://nautil.us/issue/86/energy/the-power-of-crossed-brain-wires <comment><USER2> Experiment here. I'm haven't synesthesia but I do have some associations of colour and their brightness/darkness with days of the week (these don't match those in the article). If anyone wants to do the same, mine are below in base64 (emacs has base64-decode-region or you can do it online). I'd be interested if there's a correlation.

      c2F0dXJkYXkgLSBkYXJraXNoIGdyZXksIGJsYWNraXNoCgpzdW5kYXkgLSB3aGl0ZQoKbW9uZGF5
      IC0gZGVmaW5pdGVseSBzdHJvbmcgcmVkCgp0dWVzZGF5IC0gc29tZXRoaW5nIGRhcmssIGxpa2Ug
      dmVyeSBkYXJrIHB1cnBsZQoKd2VkbmVzZGF5IC0gbGlnaHQsIHBlcmhhcHMgbGlnaHQgZ3JlZW4s
      IGxpbWUKCnRodXJzZGF5IC0gZGVlcCBwdXJwbGUtaXNoLCBibGFja2lzaCwgbGlrZSB0aHVuZGVy
      Y2xvdWRzICgndGh1cicgZ2l2ZXMgaXQgdGhlIGRhcmtuZXNzIGF0dHJpYnV0ZSkKCmZyaWRheSAt
      IGxpZ2h0IGdyZXk=

Promise, entirely inoffensive!

<comment><USER3> Why did you base64 it? I was expecting an image, but if it's just text, why didnt you just post the text?

<comment><USER4> So that their experience does not influence anyone else I guess.

<comment><USER2> Exactly, precisely, this.

</comment></comment></comment></comment><comment><USER5> I think I may have color–grapheme synesthesia. For the most part, I don't pay attention to the colors that I perceive in letters and numbers. But then I read an article like this, which quotes someone during the colors they see, and a voice in my mind shouts, "That's not the color of L!"

As a tangent, I wonder if there is any association between color–grapheme synesthesia and spelling or reading ability. I work as a kindergarten and first grade teacher, so I have the pleasure of guiding many young minds of all kinds as they begin to read.

<comment><USER6> I have color-grapheme synesthesia. I was in a study once because of it and got frustrated by the colors on the screen being offered in the study, because they generally weren't quite right in capturing the colors correctly.

I had kind of a similar experience as what you're describing. I didn't even know there was a term for it, and just sort of assumed everyone experienced things that way, like phosphenes or things like that. Then I was reading an article about it, and realized they were talking about my experience.

</comment></comment><comment><USER7> Is there a term for "seeing" music? Not anything visual perse, but like a minds eye landscape texture. I think it might be associative synethesia?

<comment><USER8> I remember seeing a discovery channel documentary where they put a musician under an MRI and a lot of his brain lit up.

So I suspect it's actually part of the common human experience and not synesthesia.

If you would actually _see_ it, IRL then that would be synesthesia.

If you see it in your mind's eye as vividly as you see things IRL then it depends.

Disclaimer: not an expert, I simply have a small interest in these topics. During my bachelor synesthesia was perhaps covered for 5 minutes. I learned more about it on my own.

<comment><USER9> How do people distinguish between "actually seeing it" and a visualization?

I've heard it being used to memorize the digits of pi, so it's clearly extraordinary, but it's difficult to see what is a normal reaction to music in the first place. I can't imagine "just" perceiving the music at all.

<comment><USER8> Lucid dreams are much more akin to seeing it than whatever I "see" in my minds eye.

</comment></comment></comment></comment><comment><USER10> When I listen to music sometimes I start to taste a tanginess or sweetness in my mouth. Much the same way my mouth starts to salivate and feel strange when I imagine eating a sour lemon. I think that's pretty common? Is that related to to synesthesia or am I just hungry?

<comment><USER11> Sounds like synesthesia to me.

</comment></comment><comment><USER12> The degree of awe taken when speaking about synesthesia has always mystified me. I don't think authors would use such flowery language if they were talking about someone seeing an illusory life coach or some other "beneficial" hallucination.

<comment><USER13> Being awed at any beneficial hallucination sounds appropriate to me. It seems awe-some. Clearly, it enriches the lives of whoever has it.

</comment></comment><comment><USER14> I've suspected for a while I might have _very_ low grade synesthesia. Almost nothing triggers it, but for certain types of white wine, I can't describe the taste as anything other than blue, and my mind fills with that colour (something close to #349beb; I don't see it per se, but it somehow feels like more than just imagining it). 5s also often feel like they should be red, but I suspect that's just an association I've picked up from somewhere, as I don't actually perceive them as that.

<comment><USER11> One example of low-grade synesthesia that many people have is when you ask them what shade is deep, distant rumble of thunder (without seeing the lightning strike). Almost everyone will say that it's dark despite the association with very bright lightning.

<comment><USER15> Yeah, it's a steely gray, like the clouds it seems to boom from.

Isn't that more of an evolutionary trait than a unique disorder/neurodiverse trait? Seems like grey = loud sounds = fear would increase survivability. Synesthesia is typically diagnosed as a seemingly illogical pairing between different sensory experiences. Thunder being a dark color is logical.

<comment><USER11> I don't know the reason for it but when I experience audio -> visual synesthesia, the lower sounds are invariably darker than higher sounds.

<comment><USER15> I would imagine that our body subconsciously pairs amplitude and frequency. BRB, gonna go re-read my entire Oliver Sacks collection.

</comment></comment></comment></comment></comment><comment><USER16> I suppose if you could give people synesthesia via a drug for a couple hours that might be marvelous but for the people who have it all the time it must just be ordinary life.

</comment><comment><USER17> Anyone interested should check out Dr Ramachandrans research at UCSD. Capgras delusion, Phantom limb, synesthesia, mirror neurons, all great rabbit holes. Also some great documentaries, I think Secrets of the mind is one, and also the Boy with the incredible brain ( savant/ seeing shapes for math etc) Great stuff

</comment><comment><USER18> I have always felt that the colors purple, red, pink, orange, and yellow perfectly match the flavors grape, cherry, strawberry, orange, and lemon. Grape tastes much darker than lemon, cherry tastes darker than strawberry, etc. Is this synesthesia, or is it just learned association?

</comment><comment><USER19> I experience a rather boring form of this, sight inducing touch sensations. It can be uncomfortable to look at some things because of the association. Otherwise, very little impact that I'm aware of. So, it's not all about the color of music and numbers and memory aids.

</comment><comment><USER20> Also known as imagination

<comment><USER11> Same as people seeing walls melting when doing psychedelics just have imaginations?</comment></comment>


Ask HN: is anyone using TokuDB in production? - <AUTHOR>

I submitted a similar question about a year ago, but didn't get much answers. Seems like they've been getting more traction lately.<p>Has anyone had any experience with it? It sounds very promising, but I couldn't find much info about companies actually using it in production. <comment><USER2> [http://www.tokutek.com/about/testimonials/](http://www.tokutek.com/about/testimonials/)</comment>


When Will People Stop Complaining About Privacy?? - <AUTHOR> http://www.dannybussell.com/journal/2011/5/4/when-will-people-stop-complaining-about-privacy.html

<comment><USER2> Right after privacy stops mattering, which will hopefully be _never_.

</comment><comment><AUTHOR> Its not that it doesnt matter. I just dont get why its worth complaining about. Why complain about it when you know it wont change anything and its not hard to avoid if you just try.

<comment><USER2> Because it _will_ spark change. Right now an unknown number of companies track and accumulate an unknown amount of data about everyone online for unknown reasons, and in an effort to stave off government regulation they make noises about how they're self-regulating and we should all just trust them.

There is no world in which Facebook should be able give random app developers your phone number and address, in addition to your real name, just so you can manage a virtual farm. There is _absolutely_ no fucking world in which companies should be able to determine that same information based on your browsing habits without you even _knowing_.

And it will never, ever, ever, ever be a good idea to let the information mongers decide what is or is not "okay".</comment></comment>


The REX Neo Architecture: An energy efficient new processor architecture [video] - <AUTHOR> https://www.youtube.com/watch?v=ki6jVXZM2XU <comment><USER2> Hey, Thomas Sohmers (the presenter) here. Feel free to ask any questions... it is a pretty long talk, and I recommend watching at 2x speed if you have the ears for it.

<comment><USER3> Do you expect your chip to maintain its performance/watt advantage over Intel CPUs and GPUs on multi-threaded integer only code that is bottlenecked by memory random access latency? And if so, would you be willing to try a small benchmark of that type?</comment></comment>


Ask HN: Who uses Azure VM's? Would you like a free review of your costs? - <AUTHOR> I am bootstrapping a company to measure various performance metrics from cloud providers and put that data to good use.
I have started by focusing on the performance of Azure Virtual Machines CPUs and am looking for people who use Azure VM's (ideally not classic but I will take what I can get!)
I have gathered thousands of benchmarks across each Azure region and machine type. I believe that by using that benchmark data and understanding what instances you currently use including the region, type and cpu utilization - data that we can gather from the Azure Portal today,  we can look for ways to save you money on your virtual machine usage.
As an example, these are the sorts of insights we are able to find:
https://www.cloudrac.es/blog/2016-12-23/Another-Look-At-Azure-Virtual-Machine-Pricing/post.html?utm=hn
Is anyone interested in working with me as an early customer to prove whether this works and hopefully save you some money on your azure vm usage?
The worst case scenario for you is a report saying you aren't wasting money.
It shouldn't take any time other than running a script to grab the data I need from the azure portal - the data is in json so you can easily check you are happy with the data that you send to me.
(If Ask Hn isn't the right forum for this I apologise!) <comment><AUTHOR> I should probably have said, my email address is in my profile!</comment>


Funky File Formats [video] - <AUTHOR> http://media.ccc.de/browse/congress/2014/31c3_-_5930_-_en_-_saal_6_-_201412291400_-_funky_file_formats_-_ange_albertini.html#video

<comment><USER2> link to the english version without dubbing [https://www.youtube.com/watch?v=Ub5G_t- gUBc](https://www.youtube.com/watch?v=Ub5G_t-gUBc)</comment>


Ask HN: what is a monad? - <AUTHOR>

Just like the title says. I've googled, I've read, but I still haven't found a concise, easy-to-understand explanation of what a monad is. I hope someone here will share a valuable insight.<p>Thanks in advance! <comment><USER2> Before you try to understand what they are, try to understand why they are important and why each type of monad you come across is important, starting with the Maybe monad, which I think is one of the most obvious.

Someone smarter than me feel free to correct me, but my experience has been that every monad I've learned seeks to take a particular imperative or procedural programming idiom, which itself may pop up in several different styles, and "standardizes" how that programming problem is handled by putting it in a special typeclass. This "standardization" is a huge source of power since how the problem is handled becomes predictable, less likely to contain bugs and generally leads to a more composable code.

Take the Maybe monad for example. I'm sure that as you've programming you've found yourself constantly checking for an undefined or null argument/parameter value at the beginning of a function. Sometimes people just return false, null or undefined. Other people return errors. Some throw exceptions. The Maybe monad gives you a typeclass that allows some data to be Just the value you want or nothing. Since you have a standard way of having something be undefined and it's encoded in the datatype itself, you never really have to handle undefined values in other functions. Why? Because these other functions that work with the Maybe monad don't really operate on the value directly. Instead they operate on the value via the Maybe monad's fmap function.

Check out this post for a good explanation of some monads:

[http://adit.io/posts/2013-04-17-functors,_applicatives,_and_...](http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html)

This too:

[http://adit.io/posts/2013-06-10-three-useful- monads.html](http://adit.io/posts/2013-06-10-three-useful-monads.html)

From now on, whenever you see a new monad, ask yourself what generalizable programming problem or idiom it is trying to encapsulate and why it's important to solve that programming problem. With the case of the Maybe monad I mentioned above, you can read up on a lot of the literature out there explaining why the invention of null was a terrible. C.A.R. Hoare calls it his billion dollar mistake.

If you don't understand the problem being solved, understanding the abstraction presented by a particular monad is going to be a lot harder.

</comment><comment><USER3> A monad is just a monoid in the category of endofunctors, what's the problem?

<comment><USER4> I've forseen this answer.

</comment></comment><comment><USER5> Personally I like this tutorial by douglas crockford

[http://www.yuiblog.com/blog/2012/12/13/yuiconf-2012-talk- dou...](http://www.yuiblog.com/blog/2012/12/13/yuiconf-2012-talk-douglas- crockford-on-monads-and-gonads-evening-keynote/)

<comment><USER6> Douglas Crockford gives an incorrect definition of a monad and confuses them with functors. If you learned about monads from Crockford, you didn't learn about them.

</comment></comment><comment><USER7> Brian Beckman's explanation might help shed some light on the concept: [http://www.youtube.com/watch?v=ZhuHCtR3xq8](http://www.youtube.com/watch?v=ZhuHCtR3xq8)

</comment><comment><USER8> [http://blog.plover.com/prog/burritos.html](http://blog.plover.com/prog/burritos.html) helped me.

<comment><USER9> That was brilliant, there's also a cartoon: [http://chrisdone.com/posts/monads-are- burritos](http://chrisdone.com/posts/monads-are-burritos)

</comment></comment><comment><USER4> I like how this question appears here and on another resources at least once a month on average.

</comment><comment><USER10> I'd also really like to see a good intro. The answers so far have not helped me.

</comment><comment><USER11> I'm excited you're starting a journey. Make sure to pack ibuprofen.</comment>


Ask HN: How to apply for a small business loan successfully - <AUTHOR>

Hello community,
My quick story: For the past 5 years I have been working at a small newspaper (Web Design/IT Assistant). I'm hitting the point where I feel I cant do this anymore. I've always wanted to work somewhere that has something to do with football(soccer).
I have a been toying with a business idea in my head for a while, I've done some research, estimated my start-up costs, looked for empty buildings. I have no competition in my area and know that there is a market for my idea. My business idea involves soccer leagues.
I'm reaching out to the HN Community for advice.
Has anyone applied for a small business loan with success? If so, what steps did you take to help you get your loan? What did you do to make your application stand out from the pile on someones desk?
Any help would be greatly appreciated.
Thank you all in advance. <comment><USER2> Yea, I feel your pain, but I would forget the thought of "traditional" lines of financing for the time being. Some thoughts on hackfinancing:

1) Set up an organization website, profile and all the relative legal structures prior to actually quitting your job. Determine cap ex and operating costs upfront and use them as a barometer of short and long term financial viability -- don't forget to include your salary. Identify all the costs that can be extended over the long term (for example, artificial turf that can be bought under letter of credit from the manufacturer). This all does take quite a bit time and after the paychecks stop coming, the urgency to get the show on the road is on. Save yourself much of this by starting now.

2) Develop a community of soccer enthusiasts by asking them to get on an e-mail list on your site and/or collect them out and about in different places.

3) Develop a community of businesses in your local community that would be interested in supporting your organization once you get off the ground. Use a free CRM tool to keep track of your relationships and be relentless about setting up the ground work and pounding pavement early. Do the same with family and friends.

4) Develop a program based around a specific operating season that invites team captains and corporate sponsors to buy into the league's founding year at X costs. Use the team captains as your primary vehicle for driving the membership model for your initial run. Promote shamelessly to corporate citizens with various contribution levels and use the organization's structure and initial interests to drive participation.

5) Take the participation metrics, financials, organization's structure to the equipment suppliers/manufacturers are request special financing terms that will allow you breathing room to lengthen your operating horizon given the special liquidity situation you're currently in. Pay hard cash for only the essentials necessary to keep the concept moving forward. Take a similar approach and now approach your target locations with a sound proposal for renting the space, with allocations for build out (most available with property improvement assistance from the landlord if they have the resources). Seek probono assistance from a commercial property managers interested in the project on how best to set this up and approach the landlords. Do so ONLY after all the steps above are completed and documented to confirm how you intend to run the enterprise.

Additions:

Seek friends and family financial assistance for net difference by allowing them to become founding partners in the operation - granting options or stock (under the allowable limits as determined by the SEC).

Sell yearly "pickup" game passes for specific day of the week pickup games on a membership plan.

Host weekend day birthday games for kids (see how climbing centers do this really well). Sell 10 pack kids party tickets in advance to parents to build up cash.

Set up and host summer camps, sell passes early.

</comment><comment><USER3> Getting loans from the SBA are very difficult for startup businesses. The best is to get a proof of concept going and then go to some angles for the money. SBA will not likely loan you operating capital, but asset purchase capital. They want something they can foreclose on.

hope that helps

</comment><comment><USER4> There's a reason why venture capitalists and angel investors exist. No bank wants to loan money (without a personal guarantee) to a company that has a 30%+ chance of going out of business within the year.

Your best bet is to build up traction on a project and get an investor or fund it on revenues. Loans are not a realistic option.

</comment><comment><USER5> The best you are likely to do without collateral at a bank is a personal signature loan if you have good credit. But if you have good credit, you can still get a twelve month credit card no interest advance for about 4 points.

The real question is, why do you need a building? It's expenses like that which make a loan necessary.

</comment><comment><USER6> It's very hard to get a loan to start a business nowadays. Banks like to give loans to businesses with an established business model investing in growth. If you really believe in your idea, why not finance it with credit cards?

</comment><comment><USER7> and why do you need an office building? i think that's perhaps a bit exorbitant? just work out of your home until you can justify getting an office, unless of course you need a soccer field for your league.

<comment><AUTHOR> Actually that's exactly what I need. I need an empty warehouse and an indoor soccer arena. Soccer is huge in my area. I want to open an indoor soccer arena.

<comment><USER5> You don't need a warehouse. You need an architect (of the sort that designs buildings). The building code requirements for an assembly use are very different from those of a storage facility particularly with regard to life safety (egress, fire protection, lighting, alarms, etc.). In addition, zoning issues relating to use in general and parking in particular are common in many jurisdictions.</comment></comment></comment>


Show HN: Empirical – a language for time-series analysis - <AUTHOR> https://www.empirical-soft.com/ <comment><AUTHOR> I wrote Empirical to address issues I had routinely faced in my career.

I spent ten years in quantitative finance, primarily statistical arbitrage and high-frequency trading. I always ran into problems working with time-series data, from fetching the data to expressing the algorithms to watching my backtests fail from a type error after four hours.

As a result, Empirical has statically typed Dataframes and builtin timestamp types. It can infer the types from a file as long as the input source is known at compile-time, such as in a REPL.

Today's release is the very first public beta. There is a ton of work to do still; see the roadmap for further details:

[https://github.com/empirical-soft/empirical- lang/issues/1](https://github.com/empirical-soft/empirical-lang/issues/1)

I have released the source code under the AGPL with the Commons Clause. A proprietary license is available for users who need more commercial-friendly terms.

It was a long journey to get here. I would like to thank everyone who participated in the private beta. And lastly, I would like to thank Y Combinator; I won a Startup School grant last year.

<comment><USER2> I like how SQL syntax is integrated into the language. That is very convenient.

Can you compare/contrast this language with q? Can I write complex queries as I can do in q? How about performance?

<comment><AUTHOR> q was definitely an inspiration.

The biggest difference is that Empirical is statically typed. Also, arbitrary expressions are allowed anywhere when dealing with Dataframes.

For example, I can sort by anything:

        sort my_table by col1 - col2, foo(col3)

And I can aggregate by an external array as long as the lengths are the same:

        from my_table select foo(col1) by some_array_with_repetition

As for performance, I've tried to make Empirical "reasonable" at this stage, though I haven't put too much effort into it beyond that. I'm more worried about the ergonomics of the language right now, so I don't have SIMD, dependency analysis, etc.

One of the biggest things Empirical lacks compared to q is nested arrays. That's a major issue I have to tackle in the virtual machine.

</comment></comment></comment><comment><USER3> This is a great programming language homepage content wise. The copy and examples are good, gets right to the point.

But the navigation needs some work. The problem is the top logo isn't clickable, so I can't go back to the homepage from any of the subpages without clicking the back button, and the subpages don't have the primary navigation at the top either.

Edit: also the navigation should be repeated in the footer.

<comment><AUTHOR> Thanks for the tips. Web design is a complete mystery to me, so I'll gladly take all the feedback I can get.

</comment></comment><comment><USER4> I really like that it feels like a dynamically typed language but with the security of type inference. That's really cool

<comment><AUTHOR> That's exactly the feel I've been going for. Instead of "gradual typing", I wondered if there was a way to make everything statically typed but still read from a file. I settled on a combination of _type providers_ (F#) and _compile- time function evaluation_ (D).

</comment></comment><comment><USER5> Pretty cool. And is similar to my idea for a relational language:

[https://bitbucket.org/tablam/tablam/wiki/Syntax](https://bitbucket.org/tablam/tablam/wiki/Syntax)

Only, this has shipped!

</comment><comment><USER6> This looks super interesting. We're doing a startup right now that transforms data into time series tables. Building datasets from those in sql has been challenging enough that we built out a UI to do it. This could be another elegant approach.

<comment><AUTHOR> Narrator looks interesting. I'm only reading CSV files for now, but I do want to handle SQL pushdown at some point in the future. Feel free to ping me if you want to swap war stories.

christopher.aycock (AT) empirical-soft.com

</comment></comment><comment><USER7> Looks very interesting. Is there (currently) any facility for saving work? Like writing dataframes and/or functions to disk? I had a quick look at the tutorial and source - but only found the stuff handling csv input.

<comment><AUTHOR> It's pretty rudimentary, but you can save CSV files from a Dataframe with:

        store(df, "some_file.csv")

I don't have modules yet, but you can load an Empirical code file from the REPL with a "magic command":

        >>> \l my_functions.emp

The full list of magic commands is available with:

        >>> \help

</comment></comment><comment><USER8> I really like the `asof` keyword, so I'll be stealing it for my own language :-)

I suppose that `from ..` does not print the result, but rather returns a new dataframe that just happens to be printed by the REPL ?

<comment><AUTHOR> You are correct about "from". Empirical is a normal programming language; when an expression is evaluated in the REPL and the result isn't stored, then the result is printed to the screen.

</comment></comment><comment><USER9> Very nice. I realize that it currently runs in a shell, but one ingredient I would absolutely want is built-in charting capabilities - especially when running back-tests etc.

<comment><AUTHOR> Visualization is definitely important and I would love to hear anybody's thoughts on it. I think I should make a wrapper to an existing library, like matplotlib or ggplot2.

<comment><USER10> I've really been enjoying vegalite, but that does require a browser.

</comment></comment></comment><comment><USER11> Any comments on performance today or in the near future? Any features which should provide a big speedup in the future as compared to competitors (kdb, pandas)?

<comment><AUTHOR> I've primarily been focused on the ergonomics of the language, so I've only tried to make performance "reasonable" for now.

Longer-term performance objectives are:

1\. JIT - I designed the VM's byte code to be both interpretably and a mid- level IR to LLVM. Currently I just interpret everything since there is almost no runtime overhead for vector operations. However, compiled code will greatly speed-up any scalars in a loop.

2\. SIMD - Since the VM's opcodes are already statically typed and vector- aware, integrating OpenBLAS and SLEEF (or Intel's MKL and VML) should be straightforward.

3\. MIMD - Ideally I can just lean on existing libraries, though I'm not above embedding OpenMP if that gets the job done.

4\. Distributed - Now comes the hard part. If we want MPI-level performance, I need to have more sophisticated scheduling. Which leads us to...

5\. Streaming - This is the real holy grail. There has been a ton of research in the database community to get away from the "Volcano model" (iterators). I want to have the compiler generate streaming-aware opcodes for the VM based on the nature of how the data is to be consumed. I believe this will require a type system that can track the "context" of the computation, similar to how Koka and F* track side effects. I'm not aware of any general-purpose language that has compiled streaming.

<comment><USER12> Looking at interpret.cpp for SIMD potential: I bet you could add an allocator for std::vector that aligns and pads everything to 32 bytes then just replace all of the scalar op loops with loops over AVX intrinsics. No need for an external library.

<comment><AUTHOR> That's a possibility to get something running near term. I'm trying to avoid CPU-specific intrinsics since I have a fantasy that this might be run on ARM in the future, though that may be getting really ahead of myself.

<comment><USER12> NEON intrinsics are pretty easy as well ;) As long as you are doing simple +-*&| ops they work the same as SSE.

</comment></comment></comment></comment></comment><comment><USER13> Thank you! Aside from non-free kdb, there are not much products available in the field. I will test it and see if it works for my tasks.

<comment><AUTHOR> Thanks for trying it. As I mention elsewhere, Empirical is pretty limited right now because this is the first beta release. If you run into something specific that's missing, please let me know about it, ideally on the issue tracker:

[https://github.com/empirical-soft/empirical- lang/issues](https://github.com/empirical-soft/empirical-lang/issues)

That way I'll know what targets to hit.

</comment></comment><comment><USER14> My corporate overlords are blocking access to your site. They say your cert is invalid.

<comment><AUTHOR> Are you able to post any error messages? I haven't gotten notice from anyone else, and my own browser doesn't have any complaints. But if there's a problem, I want to get it fixed.

<comment><USER14> I sent them your reply and magically all is good. Thank for the "ammo" and the work.

</comment></comment></comment><comment><USER15> This looks cool! A few comments:

\- I peeked at the VVM implementation, since I've been looking for an implementation of data frames for my shell Oil [1]. I've looked at Hadley Wickham's dplyr code, R's data.table library, Pandas (which is somewhat awkwardly based on NumPy), and a little bit at Apache Arrow. I also remember R has a "zoo" library though I haven't used it much.

Was your designed influenced by any system in particular? I've had a hard time finding any descriptions of data frames other than the code. I have less experience with time series, but I believe the main issue on top of data frames is having joins by time columns (e.g. your "asof" operator).

But otherwise, could VVM could be used for dplyr-style analysis? dplyr has a very rich set of operators.

[https://www.rstudio.com/wp-content/uploads/2015/02/data- wran...](https://www.rstudio.com/wp-content/uploads/2015/02/data-wrangling- cheatsheet.pdf)

Hadley does a good job of describing the high level philosophy, but I've been looking for low level advice, like how to do vectorized math quickly with overflow checks and so forth. (Do you have ints or is everything a float?) Maybe it's not a big deal, but it's not something I have experience with. I'd like to read about someone's implementation, especially in portable C / C++. I think a lot of earlier systems were in Fortran/assembly.

I guess your implementation is fairly different because the language is statically typed. I peeked and it looks like DataFrame is std::vector<void star>, which makes sense for static typing.

Have you looked at how Julia does things? It has macros and fast code generation. I imagine you started this project before Julia 1.0, where they added NA for data frame support. I'm more of an R and Python user, but I find Julia pretty interesting, e.g. something like this approach is impossible in R or Python AFAIK:

[http://scattered-thoughts.net/blog/2016/10/11/a-practical- re...](http://scattered-thoughts.net/blog/2016/10/11/a-practical-relational- query-compiler-in-500-lines/)

[http://scattered-thoughts.net/blog/2018/08/16/julia-as-a- pla...](http://scattered-thoughts.net/blog/2018/08/16/julia-as-a-platform-for- language-development/)

\- I watched your video, which is a nice demo. My feedback: if you want to maximize the number of people that get through it, I would make the font bigger and also raise the bottom of the window so the typed code is more readable. The code is nearly clipped off which causes some friction for viewers. Hope that's helpful.

\- Nice to see someone else using Zephyr ASDL! I have linked these blog posts a few times here: [http://www.oilshell.org/blog/tags.html?tag=ASDL#ASDL](http://www.oilshell.org/blog/tags.html?tag=ASDL#ASDL)

Anyway I hope to have time to play with this a bit more. I don't have that many time series use cases but I'm definitely interested in data frames!

[1] The slogan for why a shell could use data frames is: "the output of ls and ps is a table". For those unfamiliar with data frames, here's my intro: _What Is a Data Frame? (In Python, R, and SQL)_ [http://www.oilshell.org/blog/2018/11/30.html](http://www.oilshell.org/blog/2018/11/30.html)

<comment><AUTHOR> VVM is column-oriented, which is how pretty much every Dataframe implementation works. Each column is a vector of whatever the user's type represents; Int64 in Empirical is i64 in VVM and int64_t in C++.

VVM has its own statically typed assembly language. You can see examples of it in the regression tests; here's one that sorts a table:

[https://github.com/empirical-soft/empirical- lang/blob/master...](https://github.com/empirical-soft/empirical- lang/blob/master/tests/VVM/sort.vvm)

Since it's a virtual machine, VVM is pretty low level and really only meant as a compilation target. While it does some of the heavy lifting to match keys or determine the order of indices in a vector, Empirical is needed to coordinate the moving pieces.

Empirical takes a very different approach from Julia. Empirical is statically typed (not "gradually" typed), is focused around Dataframes, and compiles to a VM that is then interpreted.

As I mention elsewhere, I haven't done much on the performance side of things. I eventually want SIMD and JIT, but my priority for now is getting the Empirical language right.</comment></comment>


The Cost of Living in 11 of the Most Expensive Cities in the World - <AUTHOR> http://images.smh.com.au/file/2014/01/05/5054744/costofliving.jpg?rand=1388923914725

<comment><USER2> Rio de Janeiro (approx. prices) Cappucino: $3 1L Petrol: $1.36 2 Movie Tickets: $20 iPod nano 16GB: $330 Monthly Rent: $2000

I'd say things are pretty expensive for no reason around here..

</comment><comment><USER3> Vancouver typically rates in the top 3 and is more expensive than Toronto.

</comment><comment><USER4> Abuja, Nigeria should be on there.</comment>


Webhooks do's and dont's: what we learned after integrating APIs - <AUTHOR> https://restful.io/webhooks-dos-and-dont-s-what-we-learned-after-integrating-100-apis-d567405a3671#.9rl15pi3z <comment><USER2> How do people in production handle the possibility that your service might miss a webhook notification? If you miss a notification you'll end up with stale data and you won't know it.

Slack has a retry policy for a while but will then just give up. Another webhook provider I've looked at says nothing at all about this sort of thing. How do folks deal with this in production systems?

Seems to me like the best way to address this issue is to use the webhook as a hint that you need to run some other process that guarantees you've got all updates.

<comment><USER3> I would prefer to implement the sending of webhooks in bulk - if the consumer falls behind, they receive up to 100-1000 webhooks per request (depending on the size and complexity of each individual webhook - ids only is 1000, complex documents 100). This drastically cuts down on the number of concurrent requests to a single client when load is high, or the consumer broke down for a period of time.

Unfortunately, developers writing code to receive batch requests are often... inadequate, to say the least. They'll write basic looping code without any error/exception handling; so if the 3rd item in a bulk request of 100 items causes a server-side error for them, they throw a 500 Internal Server Error or similar and fail to continue processing items 4 through 100. You simply cannot batch webhooks as a producer, unless you detect a single failure from the client to process a batch as a cue to drop to performing "batches" of size 1 until you receive an error for a single request, at which point you return to bulk. Rinse and repeat.

Honestly, being the producer sending webhooks to consumers which are written by random developers is a nightmare. You have to understand that your customers will not write proper code to accept your webhook requests, even if each request is for a single webhook. You also must understand that your customers will not look to blame themselves for shitty code. You can retry 1,000 times over a 48 hour period, and if their code still fails to process the webhook, it will be YOUR fault, not theirs. Truthfully, it is horrible to be on the sending end of webhooks to random developers/customers.

<comment><USER4> Transactions are obviously too enterprisey for fast moving unicorns; better spend 3 weeks to badly hack together a ridiculous farce.

</comment></comment></comment><comment><USER5> I think the "securing webhooks" section is missing some critical tips that we've learned in production.

1) Resolve the DNS of the webhook URL, and compare all returned addresses from that resolution against an IP blacklist, which includes all RFC1918 addresses, EC2 instance metadata, and any other concerning addresses.

2) Even though it seems like you'd want to, do NOT blindly return an unexpected response to the person configuring the webhook. Say there was an error, what the code was, etc, but returning the response body means you basically just gave someone curl with a starting point on your network (see 1 as well)

3) Find ways to perform other validations of those webhooks. Are the URLs garbage? Are they against someone else's system? Create validation workflows that require initial pushes to the URL with a validation token to be entered back into your system, like validating an email address by clicking a link.

<comment><USER6> > IP blacklist

Please stop trying to enumerate badness. This is and always will be incomplete.

[http://www.ranum.com/security/computer_security/editorials/d...](http://www.ranum.com/security/computer_security/editorials/dumb/)

<comment><USER7> Ehh. I disagree with both Default Permit and Enumerating Badness--I think they have their place. If I run a club do I background check and whitelist every customer? Or to a blacklist the troublemakers? The problems cited in the article were reasonable decisions at the time, but years later grew into headaches when the use-cases changed.

Does their no Default Permit policy apply to network egress? Do I have to approve each and every application that wants to connect to the Internet? I think the leaving port 80 open because it was whitelisted is why so many things tunnel through port 80 instead of using other protocols and ports. Now how do you filter and whitelist traffic?

His example of antivirus products using Enumerating Badness is a market failing more than anything else. I'm not sure I see the alternative for a naive user. Call a specialist to investigate their use-cases and "open the system" to accommodate? Any time you want to update your tool or workflow or try something new have that specialist come out and reevaluate your system?

</comment></comment></comment><comment><USER8> Aside: Webhooks are always a pain.

Implementing polling is easier for both sides.

I routinely have to integrate with random 3rd party systems, some with no or broken webhooks, some with no API at all. It turns out for my customers (this may not be always the case) eventual consistency is more important than timelyness.

What I do now every time I need to sync data from a third party is I always implement some sort of pull first with idempotent logic on my side. It's easier, and it allows me to just re-run things if something fails (e.g. network error, unexpected data in production, etc).

Only when that works reliably and only if required by the customer I implement a webhook, but I usually throw away most of the message and just wake up my polling worker that is otherwise polling relatively slowly.

<comment><USER9> Long polling works brilliantly (where your API call blocks until there are some results or until timeout occurs - then you loop and call again).

Long polling gives you the best of both worlds - easy programming model with instant alerting rather than the delay of normal polling.

The only downside really is the need for a more or less permanently open connection per client. As long as the server does not use a naive "thread per connection" model this can scale up to many hundreds of thousands of clients or more.

<comment><USER10> The good thing about long polling is that if the connection breaks, the keep- alive will time out and you'll know you're not getting updates. Assuming there's some keep-alive feature.

</comment></comment></comment><comment><USER11> Sort of disagree with the send-everything-in-the-payload approach. It opens your system up to all sorts of weird edge case bugs like receiving hooks out of order which could mean stale data is considered fresh. It also means you have to care a lot more about verifying the authenticity of the request.

<comment><USER9> Agree. Its better to use webhooks as a pure signal that something has changed, and then in the case of update or insert, have the client pull whatever they want using normal API.

Otherwise, you end up in a descending vortex of madness trying to specify some protocol whereby the client can specify in advance which properties they care about.

</comment></comment><comment><USER12> Also, in your documentation, please show what the webhook events will look like since developers actually want to write code and not guess at what we will get.

 _cough_ Stripe. ([https://stripe.com/docs/api#events](https://stripe.com/docs/api#events))

<comment><USER13> The implication was meant to be that the information under `data/object` is simply a full representation of another API resource of the type on which the event occurred, and that you can look elsewhere in the documentation to see exactly what each type will look like (you can see a subscription embedded in the sample response for example).

Fair enough that we could rewrite this to be more explicit about that though! We'll see what we can do to make that section more clear.

(I work for Stripe.)

<comment><USER12> This is what I love. I purposefully talk about Stripe on here just because I know Stripe people browse HN.

Stripe is great though. :)

</comment></comment></comment><comment><USER14> This is going to sound bizarre, but why do webhooks and not just an AMQP queue? I get that receiving HTTP POSTs is easier, but it just seems better to setup a publisher/subscriber relationship. That way, if a subscriber goes down, they can always catch up. And publishers can allow messages to sit in the queue with a TTL and max_size. It seems like a win-win for everyone.

<comment> jon-wood It's not AMQP (sadly) but something I've done previously is to have the actual webhook endpoint be as dumb as possible, doing nothing but accepting the payload (maybe with some very high level validation that the request was expected) and pushing it into a real queueing system.

This means you can handle all sorts of failure modes, not just the backend going down, but also bugs in the consumer that would otherwise result in losing the request. I've not tried it, but I imagine this is a pretty good usecase for AWS Lambda as it's a small bit of glue code.

<comment><USER15> Shameless plug: [https://requesthub.xyz](https://requesthub.xyz) is ideal for these cases.

<comment> jon-wood That's pretty awesome, thanks for the tip.

</comment></comment></comment></comment><comment><USER16> Webhook only makes sense if you don't care a single bit about missing updates. If not, it's deeply flawed.

A pull model (polling, long-polling, SSE, etc) is strictly superior for synchronisation. You just can't "miss" updates, can restart from the beginning again and reinterpret past events in a different light, the client goes at its own pace, etc.

<comment><USER17> To expand on icebraining's comment, you can use weebhooks as notifications to poll.

</comment></comment><comment><USER18> It's also really handy when API providers give a nice webhook UI that lets you view and resend webhooks during development.

<comment><USER19> BitBucket is a very good example of web hook integrations done right. Relatable, logged, and well documented. I learned from their UI when I implemented my own version.

</comment></comment><comment><USER20> I did a talk a little while back on providing a good developer experience around webhooks that covers a lot of the same topics. I wish I had a recording of it, but the slides are here: [https://speakerdeck.com/johnsheehan/crafting- a-great-webhook...](https://speakerdeck.com/johnsheehan/crafting-a-great- webhooks-experience-1)

Edit: found the video [https://www.youtube.com/watch?v=xc5ezyJjz1k&feature=youtu.be...](https://www.youtube.com/watch?v=xc5ezyJjz1k&feature=youtu.be&t=1266)

</comment><comment><USER21> I'd like to follow up on the statement that the OpenAPI tools do not support webhooks. This is slated to change in an upcoming version of the OpenAPI- specification. Check out [https://github.com/OAI/OpenAPI- Specification/pull/763](https://github.com/OAI/OpenAPI-Specification/pull/763) to see details. As soon as this is released, it only be a matter of time before Swagger and the rest support webhooks.

</comment><comment><USER22> To be fully client based (serverless) you need a middle-man for web-hooks. Websockets are a better alternative for stand-alone web clients. There are also "push notifications" via web workers but they are vendor dependent.

</comment><comment><USER23> Honest question. Why webhooks over something like push/pull handshaked socket?

<comment><USER24> For the receiver: Everything that can run a dynamic website can run a webhook receiver, opening an arbitrary socket connection isn't possible in all environments (e.g. software running on shared hosting or PaaS). You'd also need to define and implement a protocol on top of said socket, whereas more or less every web developer knows what to do with HTTP POST with a JSON payload.

And for the sender, keeping many concurrent connections open can be quite a challenge. Sending Webhooks also takes resources, but at least you can easily distribute it over many machines/processes if necessary.

</comment></comment><comment><USER25> What I am most interested in is how to test/debug webhooks during development.

How do I tell webhook providers to send test notifications to my local development instance without tampering with the production setup on both sides?

<comment><USER26> This is another thing that Stripe nails. Out of the box it comes with a Test mode and you can easily use this to test your webhook implementation.

Another way to handle this is to create and maintain a mocking tool that will generate requests.

</comment></comment><comment><USER10> So "push technology" is called "webhooks" now?

How does this all integrate with HTTP 2? Can you get your notifications over a channel you already have open for other reasons?

<comment><USER27> Not quite. "Push technology" is sort of an all-encompassing term for server- to-client updates whereas webhooks pertain specifically to HTTP callbacks. An example of a webhook would be GitHub making a POST request to some URL (set by the user) whenever new commits are made to a repo. Push technology might take the form of webhooks, long polling, WebSockets etc.

Webhooks are traditional HTTP requests so I don't believe HTTP/2 changes anything. The ability to differentiate notifications depends on the service / API you're integrating with.

</comment></comment><comment><USER28> It would have been interesting to read about tests for web-hooks. How do you do integration testing for example?

<comment><USER29> In the past when I used to support webhooks what I did was very simple:

* Receive the HTTP POST submission to my hook end-point.

* Save this data in a queue.

* Return to the hook-caller "200 OK - $ID".

This was better than trying to initiate a long-running job as a result of the hook, and meant that I could trigger "fake webhooks" just by adding data to the queue manually.

I'm sure there are other approaches, but this is a flexible one that also gave the benefit of being simple. (For the queue I just used Redis.)

</comment></comment><comment><USER30> Apostroph'ed.</comment>


Android Developers Guide New Layout - <AUTHOR> http://developer.android.com

<comment><USER2> Quite a major facelift. I love seeing the Android design patterns used on the web, would be cool to see Google integrate that style into more web sites.</comment>


Ask HN: does raising convertible debt preclude applying to YC? - <AUTHOR>

I'm wondering if raising any other smaller seed rounds or convertible debt effectively precludes your startup from applying to YC? The application page says that they "can probably help any startup that hasn't already raised a series A round from VCs" - does that mean everyone that got accepted built out their first versions on the side without any funds?
I recently started a promising side project with two others and I think it'd make a compelling application to the next YC round. However, the team member that had the initial idea has already taken on a bit of funding ($25k) while he was building the prototype by himself before the other two of us joined, plus he was planning on taking on about $100k in convertible debt so we could all spend more time working on it (the three of us currently rotate hours while we pay rent with consulting) and he thought that would preclude joining YC because it would mess with later valuations. For example, if the YC valuation is really low, then the investors that provided the convertible debt would get way more than the 10% or so that we were all probably expecting, more like 40-50%. I don't care about valuations but giving away half the company for such a small amount of funding sounds insane.
So has anyone else raised seed money before getting into YC, especially convertible debt? Or does that pretty much rule you out and is YC geared only towards funding those where YC is the first and only round of seed funding? <comment><USER2> No; on several occasions we've invested in startups that had already raised money.

Technically it depends on what size financing triggers conversion. In practice investors tend to be willing to waive converting regardless, because of the advantages to the startup of doing YC.

<comment><AUTHOR> Awesome, thanks pg - now I'm looking forward to getting the app in shape for applying.

Side note: I'm impressed with the speed and helpfulness of the answers on HN - I asked the same question on linkedin, twitter and facebook and got vague repetitive answers explaining the basics of how convertible debt works instead.

</comment></comment><comment><USER3> You should have terms in your convertible note agreements describing a "qualified financing," which should be the condition on which investors can convert to equity. Usually this gives investments in series A range, much much more than YC would invest.</comment>


Google Trust Services - <AUTHOR> https://pki.goog/ <comment><USER2> Discussion on the announcement: [https://news.ycombinator.com/item?id=13494780](https://news.ycombinator.com/item?id=13494780)</comment>


After 8 years and $128M raised, the clock is ticking for men's retailer Bonobos - <AUTHOR> http://www.businessinsider.com.au/how-bonobos-is-maturing-into-a-major-brand-2015-8 <comment><USER2> Their menswear collection looks to be trying to compete with Banana Republic and JCrew, at least price wise. I took a look at their "experimental" women's line, AYR, and it's just... I mean maybe I'm not their target demographic but for $125 I can purchase some incredible pants at Nordstrom and actually try them on in the store, not to mention have a great customer service experience and get them tailored in-house. Their women's line suffers from overly high prices for what the pieces are (simple stuff that I can buy at Ann Taylor or Loft or Nordstrom or JCrew or Banana Republic depending on my mood and what color I want it in), and the extremely narrow offering of sizes is straight up ridiculous at this point.

I'm not going to drop $150 on any clothing I buy online sight-unseen unless it's a brand I already know and trust. And yes, I can return it if I don't like it or if it doesn't fit but if I'm spending $500-1000 on clothes at a time (and at Bonobos that's two pants and two shirts plus a blazer) I don't want to go through that hassle, I want everything to be perfect the first time. I imagine that for most men their desired shopping experience is even more geared towards "I want to purchase the most adequate pair of pants the very first time and minimize the time I need to spend shopping."

I do have a few friends who live to shop but the vast majority of my friends, male and female alike, just want to buy things they like and have them work the first time around with a minimum of fuss.

Plus, if I'm going to spend that much money on clothes that I have never purchased before (and I consider $200-400 per outfit to be a significant outlay of money for clothes, which perhaps makes me an outlier) I want an experience to go with it. I want to see what I'm getting before I pay for it, and I would like the option to consult with a salesperson about the clothing. Their men's Americano and French Cuff dress shirts are in the same price range as the least expensive shirts from an awesome independent men's store close to my house (in the DC suburbs) and every time I've been in there to shop with my husband he's treated like a _king_ by the staff, as is every other customer that comes through there regardless of how much they spend. Again, when I shop there I know damn well that whatever I buy is going to be the absolute top quality that it can be because the owner cares about his customers and doesn't sell anything he wouldn't buy or wear himself.

<comment><USER3> Bonobos is carried in some Nordstrom stores, not sure about AYR. I'm actually thinking of giving their pants a second shot once the Nordstrom by me re-opens and I can try enough pairs on to find ones that fit well - if the store carries them.

Link: [http://shop.nordstrom.com/c/bonobos- clothing](http://shop.nordstrom.com/c/bonobos-clothing)

<comment><USER4> Yeah, I recognized the name Bonobos from my favorite shirt, and I had got it at Nordstrom's, gets a lot of compliments. It contrasts with another sweater I got there, which developed holes after four months...

Had no idea Bonobos was trying to do this online-only thing, my first experience with them is in the physical world.

(No, not a shill and don't normally recognize and remember clothing brands on the spot.)

</comment></comment></comment><comment><USER5> Bonobos really struggled to raise their D round... and I really mean struggle. They managed to find "dumb" money from a Mexican fund, as all well known funds had passed on the investment. I'm not saying Bonobos is a bad company, but when you run out of growth, and are desperate for cash, accessing capital is really hard...

Having raised $128m, and finding yourself in an extremely competitive sector with players with superb operations (Inditex, H&M), and well known players gone bust (American Apparel), I believe Bonobos is having real trouble in justifying a startup/tech-like valuation. If they IPO, or anyone buys them, Bonobos' investors should expected a genuine market valuation based on fundamentals.

<comment><USER6> Wait till Massimo Dutti expands into the US. Everybody who is one price level above Zara will be destroyed.

<comment><USER7> Why? Massimo Dutti is in Canada, but it doesn't look like anyone of American brands in that space was "destroyed".

</comment></comment></comment><comment><USER8> Meanwhile the ultra-highend designer, Brunello Cuccinelli, achieved a very successful multi-billion IPO valuation by focusing on hand made clothing, ethical sourcing, hands on sales, and superior quality.

Sometimes markets aren't just about driving down price and cheap supply chains. Providing a product an order of magnitude better than currently provided by competition, and charging a lot for it, can also lead to success.

I also sense that a great deal of profit will come from matching consumers values of quality and ethics over price for the coming generation of consumers.

</comment><comment><USER9> I remember when they launched, their 'special sauce' was supposed to be how they made pants fit men correctly, but the photos made their pants look awkward and ill-fitting.

To wit: [http://articles.chicagotribune.com/2008-06-01/features/08052...](http://articles.chicagotribune.com/2008-06-01/features/0805290003_1_pants- bonobos-fit)

Odd how that first impression has stuck with me and prevented me from paying any further attention to the brand.

<comment><USER10> The pants are cut for squishy office drones. It's for guys carrying an extra 12 pounds who still want a modern tapered cut. The quality is pretty much standard disposable American clothing, that is to say a pair of pants will be visibly disintegrating after about ten washes.

<comment><USER6> Ah yes, the "American slim fit". Most shirts I try on are too tight on the chest (40" chest, medium should fit normally in most brands), but the waist is... massive (31" waist). Probably for a man expecting to have a child.

</comment></comment></comment><comment><USER11> The biggest problem with buying clothes, in my opinion, is that most are low quality.

Pants and shirts should be guaranteed to withstand hundreds of machine washes without shrinking or falling apart.

Textiles are very very cheap. Men's pants styles have changed very little in 100 years. It's unconscionable that they should cost more than $25-$30 a pair.

When you walk into a Bonobos brick and mortar location, there are lots of accessories (ties, belts, etc.) which are higher margin items that are more trend-driven, which is good for the business's bottom line, but I don't know any guys who really want to go "all in" and look like a Bonobos spokesperson.

A man needs well-made, well-fitting staple garments that he can reliably reorder when he needs more (which should be rarely). The fashion and flourishes are fun, as are luxury materials like cashmere and silk, but they are not the core of a man's wardrobe.

Not everyone aspires to have a super expensive watch and fancy tie. Most of us just want well-made pants that won't be ready for donation to the goodwill the following year. I thought this was what Bonobos was building, but it seems to have branched out into what feels like a copy of Ralph Lauren, with the same kind of aspirational "gentleman" aesthetic.

<comment><USER6> "It's unconscionable that they should cost more than $25-$30 a pair."

Exactly. I want all my clothes to be made by small children in sweatshops. I don't want my money to go to businesses that rely on paying normal wages.

<comment><USER12> Actually, I want my clothes to be made by robots so that I can get a custom fit that exactly fits _ME_.

I'm a 6'3" American, not a 5'8" Italian. Therefore, I fit into almost _nothing_ at places like Nieman Marcus, H&M, Zegna, etc.

My choices are solid white or solid blue in broadcloth. My other half just quit trying since every time she finds a gorgeous shirt it simply won't fit.

I would learn tailoring _except I can 't get the really nice fabrics_. I have tried taking pictures of nice shirts and then trying to find the fabric. Everybody looks at me like I'm completely insane (effectively--if I'm not buying 10000 yards, I'm not worth talking to).

So, if Bonobos _really_ wanted to up-end the business, instead of making clothing that makes you look like every other Wall Street douchebag, they should figure out how to construct one-off clothing in _any appropriate available fabric in the world_ cost effectively.

Women would knife each other to guarantee that their dress is genuinely unique.

<comment><USER6> You need to go to Holland where you are average-sized.

<comment><USER13> Or Denmark. Lots of Danish men's brands, including lots of tall sizes, many of them are actually made in Denmark. The current USD/EUR exchange rate makes the prices decent.

And if you can't find high quality mens wear there you not trying enough.

Example: [http://www.norseprojects.com/store/mens- aw15/knitwear/aw15-v...](http://www.norseprojects.com/store/mens- aw15/knitwear/aw15-verner-pure-new-wool) . These guys even give you 20% off if you're shipping out the EU. And pro-tip current pick to pay in DKK instead of USD, your credit card will give you a better exchange rate (even with fees).

<comment><USER14> Thanks for the advice I never thought to check out of country.

</comment></comment></comment></comment></comment></comment><comment><USER15> _"Call me crazy, but I'm hoping we can build something standalone,"

"The e-commerce business is really challenging, and we feel like with this online-offline equation we've really unlocked something that can scale,"

"I have a long vision for the company, one that could take decades to unfold, and I didn't think that my running the company day-to-day was necessarily optimal to getting there."_

So after 8 years unable to scale, they now want to scale by building brick- and-mortar stores where you can try a product that you can only buy online?

Am I missing something here?

<comment><USER16> I walked into their store in Manhattan (unaware it was this model) because I'd heard of them, and knew from their ads that their pitch is about how great the fit is.

The salesperson was busy with a customer who was confused (and a bit rudely angry) that he couldn't just buy something now. He walked out, and so did I.

To continue this sample of one anecdata: my shopping usually goes: "hey, there's a store that sells pants -> I could use some pants -> let's get this over with"

<comment><USER17> _" hey, there's a store that sells pants -> I could use some pants -> let's get this over with"_

Interesting because mine is "I could use some pants -> where is a store that sells pants? -> let's get this over with"

I wonder how different your or my experiences are compared to the population.

<comment><USER16> Mine would be the same as yours except that I live in Manhattan and often walk around Midtown / Union Square where there are tons of clothing retailers.

</comment></comment></comment></comment><comment><USER18> It's a brand I've never understood at a valuation that seems completely insane. Generic designs that are more expensive (relative to the fast fashion bunch) and more difficult to buy (relative to comparable B&M chains).

Serious question: Does anyone know/is anyone a Bonobos enthusiast? I'm legitimately curious about their demographic, and what appeals to them about Bonobos that doesn't about JCrew/Club Monaco/Zara/Uniqlo/etc.

<comment><USER19> H&M/Zara have horrible quality compared to Bonobos/Banana Republic. I've bought clothes that barely lasted after one wash similar to the woman's clothes from Forever 21.

Bonobos has better quality, slightly slimmer and more modern fit than Banana Republic. The quality has also been better as far as chinos goes. Also I like Bonobos' attention to detail, the pockets have nice patterns and better buttons. They also fit better in the right places and seem more movable.

As far as their shirts are concerned I can find more flashy or newer type designs/patterns that are still office friendly. Plus most of the button down shirts dont have that huge blousey look at the bottom when I tuck them in. For my body its hard to find shirts with broad shoulders but a small waist.

</comment></comment><comment><USER20> Wanted to be the "Zappos of pants".

I'm a frequent shopper of Bonobos and Zappos. One glaring flaw is their shipping speeds. I felt in its earlier days, Zappos really paved the way for fast and convenient shipping. Order a pair of shoes, and you get it on your front porch in 1-2 days. I rarely shop at clothing stores now. I like to have clothes and shoes delivered so that I may try them at my leisure in the comfort of my own home and debate whether to keep the purchase for a couple of days.

Bonobos shipment takes approximately 5 business days if you live in Northern CA (which is where I am at.) Returns also take awhile. Approximately 2 weeks from when I initially ship the item, to when I receive the return on my CC. You can't be the "Zappos of pants", if your shipping speeds take 5 business days.

Their customer experience is one of the best I've ever experienced. They are really polite and really responsive.

Additionally, if you visit one of their brick and mortar shops, and you order through their reps at the store, you will get a sizable discount. Grab that person's card, and try to make future orders through that person for discounts in the future.

</comment><comment><USER21> Ha! So many haters and misconceptions, and general cynicism. Something about menswear makes guys go a little nuts these days. And the general assumption that every factory in Asia is a sweatshop is frankly racist / xenophobic. What I love about Bonobos is that as a startup fan and participant, they've been way more candid on most things around their business than they needed to be. Andy's articles on Medium have been fascinating. But, as usual today, most people make snap judgments about one particular thing based on their singular experience without thinking about the broader implications and opportunities. I'd guess those commenters aren't very good at VC investing?

</comment><comment><USER22> They're struggling because they typically hire young, professionally immature employees that treat any new process as an encroachment on their fiefdom. When I worked there getting anything done across departments required buy in from the executive team that had to force people to do their jobs.

The zappos comparison doesn't really work anymore. They dropped free 2-3 day shipping because they were losing so much money and phone support has gone downhill.

</comment><comment><USER23> I'm a tall guy with an athletic build. The bonobos "tailored slim" cut shirts are the best off-the-rack fit I've found. I recently tried Trumaker for made- to-measure shirts and was totally underwhelmed. The tailored slim shirts from bonobos were a much slimmer cut than what I got from Trumaker.

I don't love their chinos but I think I just dislike chinos. They are boxy.

<comment><USER21> Ah, I've had good luck with Trumaker actually. First shirt wasn't slim enough but was able to get it adjusted, and shirts since have been great. Did take some time to get it right though.

<comment><USER23> My adjustment came back still too baggy. I was pretty disappointed. Really wanted it to be awesome.

</comment></comment></comment><comment><USER24> Between Uniqlo, J. Crew (which has sales all the time), H&M, and other cheaper-but-pretty-much-the-same stores, I don't know what Bonobos offers.

The regular person will buy from the stores above. The person that spends a ton of money on clothes will buy actual designer clothes made.

<comment><USER25> I like their shirts a lot (much better fit than J-Crew and Banana, much higher quality than H&M), but it's still difficult to justify a $100 shirt from Bonobos when I can get a _very similar_ shirt from Uniqlo for $30.

The pants I can understand, though as someone who primarily wears slim/skinny jeans, I'm not their pants demographic. I'd imagine that there is a large market for properly-fitted pants though, as most stuff from Banana Republic and Jcrew are billowing and terrible.

But overall, I find it hard for frequently-worn shirts and pants to last more than a couple years anyway, between wear+tear and style changes. Paying 200% more for a product that is only _slightly_ nicer (but not 'you will own this for years to come' quality, such as a nice boot) and difficult to buy/return is a hard sell. If someone truly has the money to blow, it's better off going to smaller designer ultra-high-quality (or fashionable) brands.

</comment></comment><comment><USER26> 128M for the same service my local tailor provides me. I'd give money to my local tailor in a heartbeat before this company.</comment>


Advice on seeking a CTO/Co-Founder for a new fashion/style Q&A site - <AUTHOR>

Hi, I'm a non-tech founder in New York City who needs help figuring out which route to take in my search for a CTO/Co-Founder with a strong Ruby on Rails background, and to some degree my product launch.
Late last year I spent a lot of time trying to find someone to work with me on my idea and after coming up with few results I went the route of raising friends and family money to outsource development in order to build a prototype which could attract users, financing, and a technical lead/team.  While the launch has been severely delayed due to a number of reasons, it's slated to launch in stealth soon while we work out a couple kinks and then soon after we plan on doing a private beta and then finally a full fledged launch early next year after we've refined the product somewhat and built a bit of a user base.
I know I already have several things which need to be remedied with the site as soon as we get it out there, but many of the people from my original outsourced team are moving on to work on their own projects and I need to find someone as into the ideas I am, and if not, at least someone competent to work on helping me make changes to the site while I go through the search process for a tech lead.
Any ideas, suggestions, recommendations for how to go about a search given my situation? I've already tapped into my network and can't find anyone that can help.
Also, please feel free to reach out for more details.
Thanks a bunch! <comment><USER2> You should put your email in your profile's about section so people can contact you.

I'm very much interested in fashion/style for a startup and would like to hear more about your needs. I'll check for your email soon

<comment><AUTHOR> hi, my mistake, i guess i only put it in the email section. adding now, but FYI it's email@example.com</comment></comment>


Show HN: Weekend project, "I love you, but" - <AUTHOR>

I built a little app that lets people anonymously send messages to other people -- though, I purposely tried to target it towards people that might really like this sort of stuff. :)
Truthfully, I think I overheard some high schoolers saying "I love you, but..." a million times at a coffee shop yesterday but I digress.
Would you guys mind harassing your friends in the interest of helping me iron out some kinks?
http://www.ilubut.com <comment><USER2> <http://www.ilubut.com></comment>


I created Charlie Rose's Guest List + CrunchBase = CharlieCrunch - <AUTHOR> http://charliecrunch.com/

<comment><AUTHOR> I love watching Charlie Rose interviews with tech/startup people. It's hard to find them on his site (his Technology section isn't very good). So I whipped up a script to grab his guest list and check if the guest has a CrunchBase profile. Mostly for myself, but I figured other people might in find it useful too. Enjoy.

</comment><comment><USER2> It seems to have clashes with common names like Chris Paul (I guess since it's just a simple match):

<http://www.crunchbase.com/person/chris-paul> (some guy) <http://www.charlierose.com/guest/view/6742> (NBA)

Otherwise, neat little directory!

</comment><comment><USER3> "Thank you CrunchBase and _Charlise_ Rose"

Thought I'd point out :)

<comment><AUTHOR> Thanks :-)

</comment></comment><comment><USER4> This is so cool. Yay you! Yay mashups and my romantic ideal of the Internet! Yay Hacker News for helping me find stuff like this/giving you place to announce!

<comment><USER4> I just wanna say my comment here was sincere. I am fine w/being down-voted. But I don't want the author to think I was mocking.

I seriously like this site.

</comment></comment><comment><USER5> Charlie Rose ∩ CrunchBase

</comment><comment><USER6> Awesome! Thanks!</comment>


MongoDB: How to limit results and how to page through results - <AUTHOR> http://blogs.lessthandot.com/index.php/DataMgmt/DBAdmin/MSSQLServerAdmin/mongodb-how-to-limit-results

<comment><USER2> Warning The sort function requires that the entire sort be able to complete within 32 megabytes. When the sort option consumes more than 32 megabytes, MongoDB will return an error.

Well that was unexpected.</comment>


Arab Spring Inspires Community News App - <AUTHOR> http://blogs.wsj.com/tech-europe/2011/11/07/arab-spring-inspires-community-news-app/ <comment><USER2> This is why the current print media _is_ replace-able. I hear them all the time complaining about "but who will go to "some country" and report news for you?" Or something along those lines. But they keep thinking in the current paradigm.

The Internet will allow for news to be written in a totally different way. Community news + Wikileaks style sites + blogging + social networking is all that you'll really need in the future to uncover truths and report them. And I'm quite sure the news will be much better then, too, than the current media controlled ones.</comment>


White House announces creation of AI and quantum research institutes - <AUTHOR> https://venturebeat.com/2020/08/26/white-house-announces-creation-of-ai-and-quantum-research-institutes/ <comment><USER2> > $1 billion falls on the conservative side of the AI investment spectrum. > When U.S. CTO Michael Kratsios revealed last September that U.S. government > agencies requested nearly $1 billion in nondefense AI research spending for > the fiscal year ending in September 2020, representatives from Intel, > Nvidia, and IEEE said the U.S. would need to set aside more for AI R&D. > Separately, national security think tank Center for a New American Security > called for federal spending on high-risk/high-reward AI research to increase > to $25 billion by 2025 to avoid "brain drain," and the Stanford Institute > for Human-Centered Artificial Intelligence asserts the government must spend > $120 billion within the decade on AI research and education and the national > AI ecosystem.

While great to see progress in this area, this is ultimately not enough.</comment>


The End of the Web, Computers, and Search as We Know It - <AUTHOR> http://www.wired.com/opinion/2013/02/the-end-of-the-web-computers-and-search-as-we-know-it/ <comment><USER2> Whatever he's smoking - he got his startup to the top of Techmeme. Maybe he gave some of that stuff to Gabe. And to the ones retweeting the article.

Whatever his wild prediction of the future is - it sure sounds a lot like twitter. Maybe a more "leanback" version of it? Better self-control over the algorithm (actually a good idea.., but wouldn't it be a lot easier if twitter just did that? Or app.net?) Did the weird stuff he's having let him sleep through twitter? Is he counting on twitter being too reliant on the control of the feed for monetization reasons? That's risky, but bold.

Or can someone explain this to me?

</comment><comment><USER3> Why does this sound like Push 2.0 to me? And it's ironic that he happens to mention books -- that's the antithesis of a "stream." A book would be like a river bank, somewhere to get the hell _out_ of the stream.

</comment><comment><USER4> ugh - permanently stuck in the bazaar, low signal to noise and no filter. i'd opt out before letting that become my default experience.</comment>


Ask HN: What's your favorite unofficial API? - <AUTHOR> <comment><AUTHOR> One of my favorite hackathon projects was using an unofficial Robinhood API ([https://github.com/sanko/Robinhood](https://github.com/sanko/Robinhood)) to ask Alexa how a current stock was doing. If it had increased over the last year, I would ask Alexa to "purchase X shares of X stock".

Writing joke apps is a fun way to try out a new programming language and laugh about it.</comment>


Going from loving AppEngine to hating it in 9 days. - <AUTHOR> http://blog.stochastictechnologies.com/going-from-loving-appengine-to-hating-it-in-9

<comment><USER2> The author's experience sure sounds frustrating, but they sound like problems with App Engine's administration rather than the actual platform or SDK's. Here is the relevant part

"I head over to the AppEngine billing page and enable billing. However, after enabling billing, I realized I had used the wrong credit card, and tried to disable it again so I could change credit cards. AppEngine notified me that, by doing this, I would not be able to re-enable billing for another seven days"

For those unfamiliar with App Engine, enabling billing unlocks certain usage quotas and platform features.

<comment><AUTHOR> That's exactly it. However, the lack of support and braindead billing/limit policies was what actually lost us money, rather than any platform failing.

I also forgot to mention that the huge queue of mails that couldn't be sent used 5 instances all the time to iterate, so that kept using resources and costing us money for doing nothing.

</comment></comment><comment><USER3> I found a reasonably safe way to use App Engine:

-Make the "app" part of a stack, not the entire app.

-Only do one task at a time.

-Fit the task well within free quotas.

This goes against the nominal model of the service, but it's effective as a way to supplement a stack which needs some "grunt work" offloaded, and if you encounter problems, rewriting elsewhere is not painful.

</comment><comment><USER4> What do they expect using an external service to provide such an essential component of their product.

<comment><AUTHOR> It's not an external service, the entire product runs on AppEngine.</comment></comment>


God helmet - <AUTHOR> https://en.wikipedia.org/wiki/God_helmet <comment><USER2> Michael Persinger, the Canadian psychology professor (Laurentian University, in Ontario) responsible for popularizing the 'God Helmet', died on August 14th of 2018. The nature of his work was well within the traditions of parapsychology, as the name of the device might immediately suggest to the reader. He was not too modest to publish work on quantum physics in vanity journals, for instance.

However, he should at least be credited for producing research that invited the test of replication, rather than evading it, even though attempts to replicate his findings have failed to date.

</comment><comment><USER3> Doesn't this fall under the same category as electro-allergy? Weak EM field causing sensory effects in people's brains.

From what I undestand the keyword arguments against it are "non-ionizing radiation" and "nocebo effect".

<comment><USER4> If you propose such weak EM fields have effects, then design an experiment to show it and disprove alternative explanations, including null result, tampering, faulty execution of double blinding etc.

Good luck. You're going to need it.

<comment><USER3> Was that directed at me? I meant that this will be as hard to prove as electro-alergy.

</comment></comment></comment><comment><USER5> With a bluetooth connection and a nice soft diffuse texture, I could sell lots of these in Cali for 1k a piece. With some Chopra co-branding, 2k.

<comment><USER6> You forgot the crystals.

</comment></comment><comment><USER7> huh. hadn't thought about this since 2007: [https://slashdot.org/thread/20895057](https://slashdot.org/thread/20895057)

i remember those comments as being relatively sane.

<comment><USER8> fixed link: [https://science.slashdot.org/story/07/10/08/0340229/scientis...](https://science.slashdot.org/story/07/10/08/0340229/scientists- deliver-god-via-a-helmet)

</comment></comment><comment><USER9> One wonders just how this will proceed once it gets out of the 'junk science' phase of cargo-cultism, and becomes some kind of valid means of investigating the spiritual realm posited by various and sundry new-age religions. The especially jarring statement that participants could perceive 'angels', or 'groups of beings in clusters' is highly alarming in the context of some of the more controversial religions which aim to enlighten their followers on the negative effects such things can have on ones life ..

<comment><USER10> >One wonders just how this will proceed once it gets out of the 'junk science' phase of cargo-cultism...

Given the failures to reproduce the results, it's not clear there is actually anything there to proceed with. I wouldn't be surprised if electrical stimulation could produce effects like this, but it's not at all been established that they actually can.

<comment><USER11> If you can cram enough electrodes in the brain, you can probably produce any effect you'd like, but that becomes more of a Descarte's demon/brain-in-a-vat scenario.</comment></comment></comment>