Amazon Promises Package Delivery By Drone: Is It for Real? - <AUTHOR> http://spectrum.ieee.org/automaton/robotics/aerial-robots/amazon-prime-air-package-drone-delivery#.UpyzcJGfpL0.hackernews

<comment><USER3> So, I get that so far this is just an Amazon publicity stunt and there isn't actually anything here to talk about.

But give them some credit. Most of these problems are solvable. You can build a drone with bumpers around the propellers and screens above and below, to solve the "sticking finger in the propellers" problem.

You can deal with the vast majority of the navigation problem by just getting enough altitude. Above a certain altitude, you don't suddenly see new unknown buildings springing up out of nowhere, and don't need to worry about navigating around power lines or anything of the sort. Just do the takeoff in a controlled area, rise up to an altitude high enough to avoid anything but a few pre-programmed skyscrapers and radio towers, and fly to your destination at that altitude.

And you can solve the landing problem by having someone sit in a control room and take over for the landing and takeoff from customer locations. Paying someone for two minutes worth of landing and takeoff is much cheaper than paying them for the full 30 minute delivery time, along with the expense of a full sized vehicle and insurance that goes along with it.

Everyone seems to worry about the liability aspect, asking "what happens when one of these falls on someone". But we already deal with liability issues with cars all the time. Heck, we deal with the issue with planes as well; planes do sometimes fall out of the sky and kill people, but you don't hear people saying that delivery by plane will never work. That's just built into the cost of delivery. Drones are much lighter, don't have tanks of gasoline, and flying in the air gives you much more open space than driving on roads. And you could probably add a failsafe that deploys a parachute if the drone loses power or otherwise start to fall.

The big problem is flight time. Batteries just don't have the energy density to support long flight times; you can build ultra-light drones that get an hour of flight time with a lot of care, but if you're building something that's actually going to carry packages, deal with wind, and so on, 30 minutes is probably the upper limit. That means that you won't be able do trips of more than about 15 minutes each way. Now, since you can go in a straight line, without traffic, that gets you further than a 15 minute car/bike delivery, but it'll still be limited to people who are fairly close to a distribution center.

<comment><USER4> Are there other types of drones other than traditional quadcopters, for example variable-pitch quadcopters [1], that can get more airspeed and thus cover more distance in 15 min?

What about using airplane-style drones (like traditional RC planes) + a parachute to land the package? And this way you could use nitro gas fuel to get better energy density (since you can use one big gas engine instead of having to use four tiny motors)

[1] [http://www.youtube.com/watch?v=Vy5Ky50eGJs](http://www.youtube.com/watch?v=Vy5Ky50eGJs)

<comment><USER5> I have quite strong opinions about this. The only way to ensure efficient, high-load drone flight is to develop a hybrid design which uses wings to generate lift during cruise. The efficiency lost to the rotors is massive.

So I think eventually we will see tilt-rotor designs, where wings take over once the drone is airborne but the rotor disk is pitched horizontal for takeoff and landing. This massively increases energy efficiency, and makes it possible to go a lot faster.

The reason this hasn't been done with larger airplanes (the only prominent example, V-22 Osprey, demonstrates the difficulty), is that combustion engines makes the design prohibitively complex. But with electric motors, it should be very doable.

<comment><USER6> There is an RC model called the Quad Shot that sounds similar to what you're describing. [http://www.youtube.com/watch?v=IK_- yTrwNtU](http://www.youtube.com/watch?v=IK_-yTrwNtU)

<comment><USER5> Wow, that's with a greater degree of mechanical simplicity than I thought possible. But this is exactly what I was talking about. Now if you can somehow reduce propeller drag at high horizontal speeds and also accomodate a payload and/or a larger battery and also handle adverse wind conditions, you'd have something really nice.

</comment></comment></comment></comment></comment><comment><USER7> "Aerial maps usually aren't updated frequently enough to show obstacles"

I wonder where a company that constantly had a fleet of drones in the air could get up to date aerial maps...

<comment><USER8> What if the delivery drones have a mapping mode - so they do the mapping during the deliveries and even according to Bezos these are limited to 10 miles range from their warehouses which would be much more easier to map than swathes of cities. There is a possibility for this to succeed as well as fail, but at this point this one is more than wishful thinking - the technology at the basic level is already there.

</comment></comment><comment><USER9> Remember when Google brought us street view? How absurd of an ideas was photographing every street? Now we take it for granted. Is it so unbelievable that Amazon could push the boundaries the skeptics keep bringing up?

<comment><USER10> Err, they're different kinds of boundaries.

Photographing every street requires few new techniques. Mostly people didn't expect it could happen quickly or cost-effectively, or didn't expect it would be worthwhile. Arguably, it's still a neat-o factor rather than a core value.

Drone delivery requires a significant number of new techniques.

</comment></comment><comment><USER11> This is clearly a Cyber Monday promotional stunt. It amazes me that people are taking it so seriously.

<comment><USER12> Are you trying to say that it's not real and that it's a publicity stunt for cyber monday?

Or are you saying that unmanned flying machines which deliver products in under 30 minutes is not noteworthy enough for people to take seriously?

<comment><USER11> I'm saying that there is no reason for to be as noteworthy as it is right now. As Bezos himself says,

"this is early, this is still years away."[1]

Yes, 30 minute drone delivery would be big news. That Amazon is in the very early stages of an R&D project to look at the feasibility of it is not. In any case, I am staking an early bet that you'll have your Amazon products delivered by a self driving van before you'll have a drone do it - <USER2> if you live anywhere outside of a major metropolitan area.

[1] [http://techland.time.com/2013/12/01/amazon-bezos- drones/#ixz...](http://techland.time.com/2013/12/01/amazon-bezos- drones/#ixzz2mL6wIk8n)

</comment></comment></comment><comment><USER13> This is really just an Amazon PR stunt at this stage, but are there interesting solutions to the list of problems posed though?

Navigation: Well I suppose you could do this with an app that makes you stand in a spot where you think the drone could land, take a panorama photo which a human checks and approves. The app would also make you wait for a good enough gps fix before it 'green lights' your account for drone deliveries.

Obstacle avoidance: Maybe in 5 years time the processing power will be less energy intensive? You can't rely on maps entirely, but maybe laser scanned neighbourhoods and low resolution radar or sonar which aborts the delivery if inconsistencies are detected?

Safety: Maybe it drops down a virtual 3m 'tube' from obstruction free public airspace into the spot you send in from your app to get your landing site approved. The app would make you pick a space to land in that was suitable and you lay out a target pad. If the target pad visual looks wrong, e,g. black and white squares obscured because kid left a bike on it, then delivery is aborted. Maybe catastrophic loss of power or large downwards deceleration causes an airbag to deploy.

Legality: Some kind of peer to peer air traffic control standard is needed. Like a swarm of starlings.

Cost: Must be cheaper than a delivery driver, right? Not sure if its cheaper than a self driving car though.

<comment><USER14> It doesn't need to be cheaper than a delivery driver. The service would still be an enormous benefit to Amazon even if it operated at a loss because they'd be getting tons of business that would otherwise go to brick-and-mortar stores.

</comment></comment><comment><USER15> Keep in mind, the public relations aspect of this product is as much in development as the technology itself.

Is this a PR stunt? Yes and no. On one hand it's a PR stunt in that it teases people with pie-in-the-sky products that don't exist yet.

On the other hand, this is a completely new product built on completely new technology that most people don't have any experience with. Releasing this sort of stuff is delicate because people need to be acclimated to the existence of the technology before they can be comfortable with it. This release is the very first step in that process. As the project matures, I predict they will lead the launch with a great deal of public-relations-type announcements like this.

</comment><comment><USER16> A fleet of bike messengers or a truck would be much cheaper.

</comment><comment><USER17> I get that drone delivery is feasible, and in a few years COULD happen, but seriously, does this solve a problem?

If I need something like toilet paper, paper towels, nails, screws, lightbulbs, etc.. I am surrounded by places I can buy these items at in less than 30 minutes.

I admire the interest in pushing this technology forward, but I don't see the problem this really solves...

<comment><USER18> Laziness! Imagine ordering toilet paper without leaving the toilet! Hopefully Amazon will take the logical next step and have the drone drop my product with a smaller, indoor robot which can open my door via Lockitron and bring it directly TO me. Then branch out to fast food.

In seriousness, it has some utility. While I can buy toilet paper, paper towels, etc very close, it could be (for me where I live at least) considerably more difficult to find a hot new electronic item, a specific movie on Blu Ray, an unusual tool, paint in a certain shade, etc.

</comment></comment><comment><USER19> Initially this will probably carry a significant premium over normal delivery. However, as someone who lives in a city, I can definitely see there being times when I would be willing to pay the premium. Taking a cab ride to and from somewhere can easily cost $15-$30, so it could actually be cheaper to have the item delivered by a drone if time is of the essence.

</comment><comment><USER20> I don't know why you need to explicitly state "Skeptical", it's kind of implied being that I haven't seen an optimistic response yet.

</comment><comment><USER21> I'm looking forward to each year's "Cyber Monday" newsflash, now that Amazon has figured out a good way to use publicity to get traffic.

</comment><comment><USER22> My dog is gonna bite the crap out of that drone when it lands in my yard.</comment>


Current Mortgage Rate Data - <AUTHOR> Wondering where you go to get this data? Is there a site that shows the current rate on a data plot publicly available?  Do I need to keep calling my loan gal and bug her all the time? <comment><USER2> Federal Reserve publishes weekly mortgage rates for conventional mortgages

Conventional 15 year fixed : [https://fred.stlouisfed.org/series/MORTGAGE15US](https://fred.stlouisfed.org/series/MORTGAGE15US)

Conventional 30 year fixed : [https://fred.stlouisfed.org/series/MORTGAGE30US](https://fred.stlouisfed.org/series/MORTGAGE30US)

</comment><comment><AUTHOR> Best site I've found [http://www.mortgagenewsdaily.com/mortgage_rates/daily.aspx](http://www.mortgagenewsdaily.com/mortgage_rates/daily.aspx)

</comment><comment><USER3> I've always found [https://www.bankrate.com/](https://www.bankrate.com/) useful.

</comment><comment><AUTHOR> Maybe there's some ML/AI that can be applied to help, if the data were available publicly</comment>


Nomad Postbox – New Physical to virtual mail delivery - <AUTHOR> https://nomadpostbox.com/ <comment><USER2> Website looks like work in progress, filled with placeholders and spelling errors.</comment>


Ask HN: E-learning startup and blackboard failure - <AUTHOR>

After being linked to this thread [link at bottom] on reddit which describes many college/university students anger at how bad the "blackboard e-learning" suite is I started to think about my experience with blackboard at my university. If you haven't used it, imagine web appplications from the late 90's!
This got me thinking, there are no 'really' good contenders in the e-learning market, of course blackboard has a few competitors in the open source and propietary markets but none of them are a great deal better.
I'm pretty sure me and a couple of guys from my comp sci school could create something significantly better than the current market leader (blackboard) within the space of 3 months (summer holiday).
Unless we go all out and run this like a startup business it will obviously go nowhere, do you  think this is something we should run with or would getting other schools to use it be to much of an uphill battle?
http://www.reddit.com/r/reddit.com/comments/81bk3/i_submit_a_paper_on_blackboard_called_hw_2docx/ <comment><AUTHOR> I guess no-one here hates blackboard then :)</comment>


How to name a startup - <AUTHOR> http://www.cederman.com/?p=30

<comment><USER2> I was thinking my site, testomatix.com, was going to escape unscathed until you got to the ix's, only to find out ix is "the new rama." Argh. Nice post, though. :-)

</comment><comment><USER3> Find a domain you like and which is avaiable?

<comment><USER4> How about a feasible suggestion?

Domain squatting is ridiculous. At least when you had land grabs in the old west, they made you improve the property in order to keep it.

<comment><USER3> But we are not talking about domain squatting, we talk about how to name a startup.

Maybe I'm wrong, but I assume that when someone picks a name and domain for a startup is because they plan to use it. When would you register a domain then?

</comment></comment></comment><comment><USER5> also visit

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


Ask HN: Will smashing my Apple magic mouse repeatedly make it stay connected? - <AUTHOR> I have two Apple "magic" mice (bluetooth). Two generations. One with the AA batteries, and another newer one that recharges with the iphone cable. Nowadays the only magic is that I haven't smashed them against the desk repeatedly or thrown them out the window. They work for about 30-60 seconds then disconnect, then reconnect if I keep clicking. Have tried all the advice online and nothing works. I can't believe I'm the only one having this issue, and in fact there are plenty of people online complaining about it. For a peripheral that they charge over a hundred dollars for, you'd think it would work better. And I do have an Apple bluetooth keyboard that works fine. <comment><USER2> I have the issue with both mice and keyboard:(</comment>


Microsoft Groove - <AUTHOR> https://music.microsoft.com <comment><USER2> "Download the latest Adobe Flash plugin below." Well, that was it for trying it...

<comment><USER3> Poked around and found this: [https://www.microsoft.com/en- us/groove](https://www.microsoft.com/en-us/groove)

</comment></comment><comment><USER4> A useful piece of information would be the cost. I can't find it anywhere on that site. Do they expect me to sign up for a free trial without knowing the cost?

<comment><USER5> You have to click on the "1 month" and "12 month" buttons for their respective prices to show up. I was confused too.

</comment></comment><comment><USER6> This is confusing because of their previous 'groove' offering which was the origins of Microsoft SharePoint Workspace.

<comment><USER7> Yeah I got excited because I thought this was something about them improving OneDrive for Business.

</comment></comment><comment><USER8> Wait so in 2007 they bought groove the "slack of its time" (which sucked ass, IMO) then they killed it fairly quickly ($50k down the tubes) and now they've killed Zune to use the name Groove for music instead of a dev tool.

If there is one big difference between apple and Microsoft, whomever is naming products at Microsoft is terrible at their job. (Yes I agree that groove is a better name for a music service than Zune, but still - there just doesn't subjectively feel like their product names all live within the umbrella of a single company)

As much as we made fun of apple when we expected the iWatch - all the other products with the prefix-i at least we knew what it was they were peddling.

AFAIK, I'm not too familiar if Apple has made these errors in the past? Have they also recycled names for products completely different in nature?

</comment><comment><USER9> First: Flash? Really MS?

Second: Cannot find a way to take MS up on their 30 day trial w/out entering a payment form.

Third: Nope. Just Nope.

</comment><comment><USER10> At a cursory glance the music library they have is anemic, and they don't try to differentiate themselves from other offerings, so it just looks very mediocre.

</comment><comment><USER11> Sorry, but sites that use non-retina graphics for logos and icons and such just look old and sloppy on modern devices.

</comment><comment><USER12> Can the Android client cast to a Chromecast? That is one of two major things Microsoft needs for adoption here.

</comment><comment><USER13> "Try our site on a Windows PC or a Mac instead. Your current device won't work with our site."

</comment><comment><USER14> Zune, is that you?

<comment><AUTHOR> This was exactly my first thought as well!</comment></comment>


OpenSSH not happy about lack of financial support from vendors  - <AUTHOR> http://www.openssh.com/index.html

<comment><USER2> No offense to the OpenSSH team for such an awesome product but they chose the BSD license. The companies using it are under NO obligation to do squat for OpenBSD or the OpenSSH team. At least with a GPL license they could have gotten some code out of the deal.

Look, if you "do" open source regardless of license strictly for financial reasons, you'll be sorely disappointed. I'm as big a proponent of FOSS as anyone but you do it for the "love of the game".

</comment><comment><USER3> Businesses simply don't work that way. They must minimize their costs, otherwise their competitors will and they'll be out of business. It's impossible to justify donating money without good reason.

For small business owners the reason might be to donate out of the good of their hearts, but as soon as companies have more owners (ie. just about every large business) that reason disappears.

Other reasons that can still work are publicity, advertising, support contracts, future continuity, custom development etc. Unless the team can find a win-win solution that gives businesses something that they want that they can't otherwise get for free, this situation will continue.

</comment><comment><USER4> Sigh, this isn't news, just another headline ripped from reddit. That text has been there for 20 months. Everybody got to have their say and pout the last time it was posted too.

<comment><AUTHOR> Sorry, I didn't mean to imply this was new, just that I found it interesting. Was there a previous discussion on HN?

<comment><USER4> Most recently, just 12 hours ago. I'ts come up before too I'm pretty sure.

<http://news.ycombinator.com/item?id=1906613>

</comment></comment></comment><comment><USER5> As much as I love Opensource, projects need to see the writing on the wall. Companies WILL profit off of your "free" project, you have two options.

1) Accept it and live with it or 2) Change your licensing. Eg, if used to beyond personal use x y fee will be incurred for usage of the software. Free for personal, small business & non-profit but everyone else you better pay up.

<comment><USER6> There's a difference between being frustrated with other companies making a profit, other companies not contributing and other companies getting a free ride.

</comment></comment><comment><USER7> Nothing on that page says anything about OpenSSH being not happy...

<comment><AUTHOR> Paragraph at the bottom.</comment></comment>


Why a Startup Visa Category Would Create U.S. Jobs - <AUTHOR> http://mashable.com/2011/07/14/startup-visa/

<comment><USER2> Since a Visa for H1B is a defined to be a 3-year, temporary permit, then the purpose of this legislation is to take U.S. investments and export it to foreign countries. Either that or to expedite creating a bubble in the manner of the dot-com era.</comment>


ADHD children may just be immature, research suggests - <AUTHOR> http://www.bbc.com/news/education-35772654 <comment><USER2> Also: [https://news.ycombinator.com/item?id=11258136](https://news.ycombinator.com/item?id=11258136) (different article reporting on the same study)

</comment><comment><USER3> Bullshit. The guy who created the term ADHD admitted it was a fake.</comment>


Author of Love MMO shares code - <AUTHOR> http://iloapp.quelsolaar.com/blog/news?Home&post=81

<comment><USER2> Eskil gave a great presentation at a demoscene conference where he explained the technical and aesthetic decisions he made that are allowing him to make a significant MMO as a solo project.

ARTtech 2009: Developing the technology behind "Love"

<http://vimeo.com/6010060></comment>


Google Pregel Graph Processing - <AUTHOR> http://horicky.blogspot.com/2010/07/google-pregel-graph-processing.html <comment><USER2> Is there any available implementation of this (like Hadoop for MapReduce)?

<comment><USER3> There's an Apache incubator project to develop one: Apache Hama at <http://incubator.apache.org/hama/> . It's still in pre-alpha, and I haven't been able to find a way to see the source code.

<comment><USER4> I have looked at this a few times - nothing but some hopeful ideas.

It would be great to have a solid open source implementation, like we have Hadoop for map-reduce infrastructure.

</comment></comment></comment><comment><USER5> This guy needs to get a native speaker to proofread his writing for him.

</comment><comment><USER6> Back in May: <http://news.ycombinator.com/item?id=1327774>

In that discussion, abeppu mentioned a June conference featuring a Pregel paper (<http://www.sigmod2010.org/program_sigmod.shtml#res3> ). However, it does not seem to be online.</comment>


How 1-Minute Intervals Can Improve Our Health - <AUTHOR> http://well.blogs.nytimes.com/2012/02/15/how-1-minute-intervals-can-improve-our-health/

<comment><USER2> Someone once told me that "the future is already here, it just takes 5 or so years before it is recognized".

This is not news to most serious athletes or trainers. I'd go so far as to say this is really par for the course and old-hat at this point. Unless you are an endurance athlete, no one is advocating long durations anymore _. And, particularly for the average person, this is a much more manageable and, frankly, approachable solution.

The average person would get much, much more out of tabata kettlebell swings, tabata mountain climbers tabata jump rope than running 6 miles.

_ The exception I'm thinking of here is if you are a serious body builder, you might be doing long duration walks (30-60 minutes) as your cardio. These people are trying to spare as much muscle as possible while reducing bodyfat to crazy low levels. Some BB like to stay away from intense, short duration cardio b/c they think it might cut into some of their muscle gains. I can't say I've seen science support this, but this is an exception I can think of.</comment>


Stallman Does Dallas - <AUTHOR> http://stallman.org/articles/texas.html

<comment><USER2> The combination of the title with gems like:

"One of them said he was upset when you talked about nasal sex with plants." I had actually demonstrated this perverse act with the bouquet on the table, at dinner the night before I was sent home. The plants were dead, although well preserved, so I was performing rhinophytonecrophilia on them.

is what makes me love RMS even more. Bless his soul.</comment>


Android vs. iOS Development: Fight - chris-at http://techcrunch.com/2013/11/16/the-state-of-the-art

<comment><AUTHOR> My mobile dev experience consists of thus far 95% time allotted to iOS and 5% allotted to Android. Thus, I'm in no position to accurately compare the two. I feel the same holds true for the author, and most of the commenters. Yet everyone's pretending like they have no bias's or they know both platforms well enough to make a fair objective comparison.

Almost always, when something's written about iOS vs. Android, the underlying reason for justification is more rooted in 'proving' their preferred OS is superior, rather than any objective reasoning.</comment>


Help: Survey about sharing wisdom - <AUTHOR> http://survey.edukami.com

<comment><AUTHOR> Greetings from the little entrepreneurship society of Bulgaria!

We need some help for validating our efforts. With this survey we are testing if the world is ready to level up its wisdom.

We started writing code like crazy but soon we realised it is not about writing code - it's about validating your idea. That's why, with little delay, we started to distribute this survey, hoping that people will be willing to spend some of their time to complete it.

Thank you in advance!</comment>


Ask HN: What are some of the products which you buy based on reviews? - <AUTHOR> I understand many products are bought these days based on reviews. Curious to know what are some of the top/most bought. Thanks. <comment><USER2> \- Computer parts

\- Cameras and lenses

\- Phone cases

I'm always curious to know how a product holds up after a year or two, especially with more expensive items. A portable battery could have rave reviews, but if it dies after a year then I'll look elsewhere.

I never read/watch music reviews. If I hear about an artist or song then I'll listen myself and will be able to tell pretty quickly if I like them or not.

</comment><comment><USER3> everything, I always try to research what I'm buying. I would say maybe books and movies are something I do get on principle without reading the reviews.</comment>


Adobe Acquires Photo-Editing Platform Aviary - <AUTHOR> http://techcrunch.com/2014/09/22/adobe-acquires-aviary/ <comment><USER2> Surprising negativity in here, an observation to consider: HN tends to be biased regarding acquisitions. Some companies, like Google or Apple, are praised for sage decisions and invaluable acqui-hires. Others, like Yahoo and Adobe, get panned for similar moves as trying to eliminate competing products or otherwise flailing capital.

As i see it, Adobe identified a group of devs uniquely qualified to bring domain knowledge to their team, as well as mobile expertise they may have lacked. This strikes me as a reasonable strategic move on their part.

<comment><USER3> I think the negativity comes not from the fact that Adobe bought them, but that Aviary was the main, visible competition to Adobe.

Google and Apple get panned all the time for acquisitions, what are you talking about? Did you not see the thread when Apple announced they were buying Beats? Or every other Google-acquisition thread about users bemoaning the possible shuttering of the purchased service?

People aren't hating on this acquisition because they don't like Adobe (or Yahoo), they're hating on it because it means the end of competition for the time being.

<comment><USER4> I think the competition is Sketch and Pixate.

<comment><USER5> Would you mind providing links to both of those? I googled for "sketch" but would rather be sure I have what everyone is talking about.

EDIT: Ok, this [1] and [2] would seem to be what everyone is talking about. Please correct me if I'm wrong.

[1] -- [http://www.bohemiancoding.com/sketch/](http://www.bohemiancoding.com/sketch/) [2] -- [http://www.pixate.com](http://www.pixate.com)

<comment><USER6> Until I saw your link, I thought everyone was referring to Skitch, the much more limited graphic editor. I was surprised that it was seen as competition.

[https://evernote.com/skitch/](https://evernote.com/skitch/)

</comment></comment></comment></comment></comment><comment><USER7> It's very sad to see Aviary go and didn't choose to continue pushing their web editors to a more advanced audience and photo hobbyists. If they're abandoning plans moving forward in the web, Polarr ([https://www.polarr.co/](https://www.polarr.co/)) might just be the last player trying to push web photo editing experience. It always seems like the web has not done with photo processing yet though companies are all jumping into mobile these days or moving on to video processing.

<comment><USER8> Just signed up and find Polarr is probably a much better on-line photo editing platform for me. It is what I call Lightroom-on-demand! Plus, there are much more potentials for its intelligent personal style learning.

</comment></comment><comment><USER9> Gotta say I'm surprised this didn't happen years ago when Aviary made all those flash-based web tools for editing Vectors, photos, etc...

</comment><comment><USER10> I'm really shocked this didn't happen months ago actually. Seemed like a very logical fit for Adobe. I just hope they don't ruin Aviary now.

</comment><comment><USER11> Honestly I expected this to happen 2+ years ago. Glad to hear the Aviary team held on, since I never heard of anyone paying/using for their amazing tools (which were cutting edge back when they launched).

</comment><comment><USER12> I have to worry every time Adobe makes an acquisition. Seldom do the products improve.

<comment><USER13> Flash Professional improved. Typekit improved and I would say Behance has improved. I know it's cool to crap on Adobe but they've gotten a lot better in recent years.

 _EDIT_ Changed Illustrator to Flash Professional. Forgot which was an acquisition.

<comment><USER14> You mean Photoshop, not Illustrator, improved? The latter was Adobe's first app and lovingly crafted by Warnock and crew.

(I know, because I saw them with my own eyes. ;-)

<comment><USER13> Ah yeah, I don't know why I said Illustrator. I might have been thinking of the Flash Professional program, which has improved but Flash itself is on its way out.

</comment></comment></comment></comment><comment><USER15> There really isn't any other software to compete at this point. Aviary and Gimp were the only Photoshop competitors. Inkscape and Aviary were the only Illustrator competitors.

<comment><USER16> There is a reason for this. It makes no sense to make a photoshop competitor as this is not where we are heading.

Instead we are heading towards vectors as the primary asset which means toward visual editors that allow for scripting and much more granular control off assets such as animiation.

In 5-10 years ex. Sketch and other much more dynamic environments will be one of the de-facto standards as the older generations retire and the new ones come in.

Photoshop is the Quark of our time and it's heading for retirement I think.

P.S. I am part of the older generation and still uses Illustrator and sometimes Photoshop. I loved Fireworks but Adobe killed it.

However, having played around with Sketch I think I see where things are heading.

<comment><USER17> Photoshop is for editing photos, not for drawing "assets". Unless you are trying to tell me that digital cameras will produce a vector drawing of scenes, I don't see bitmap editing software going away anytime soon, or ever.

<comment><USER18> Photoshop is not used primarily for editing photos in the software industry from my experience. In a world with responsive design needs vector based just gives you more versions of assets at different resolutions for less effort than any other approach.

Sure photo editing is one use for it. But much of it is in creating icons, mockups, non photo realistic things, and more.

<comment><USER19> How Photoshop is used doesn't really matter - it's intended as a photo editing product. Adobe already has an illustration / vector product and there's a reason they're separate.

<comment><USER16> How it's intended is most certainly what doesn't matter given how many people use it for other things than photo-editing.

<comment><USER19> First, I'd say "most people" is anecdotal and supposition.

Second, even if "most people" used Microsoft Word to build web pages I wouldn't treat it like a web IDE.

<comment><USER16> Which is why I never said it was that categorically so why the strawman?

But you know being a designer having worked with designers, having had a large design agency and done some work for Adobe I do consider myself fairly informed on the matter.

Whether you wanted to consider it a web IDE is besides the point. I remember the days when notepad was considered the gold standard.

If it helps you get the work done who care about what it was supposed to help them with.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> If Aviary owns any patents in the photo-editing realm, those alone were worth the acquisition to Adobe. Aviary has active partnerships with Yahoo! Mail and others, as their primary built-in photo-editing default utility. The second part of the win for Adobe, is they can now slather the Adobe brand, all over where the Aviary brand is now prominent, in those partnerships. That's what matters to the money folks.

</comment><comment><USER21> nice. I think it's just a question of time until someone makes a web based Photoshop killer again though. Wonder how much of Adobe's revenue is based on Photoshop (or inclusion of Photoshop in CC)

<comment><USER22> I think a web based killer is very far away in the time line. I recently was trying to make a huge gird in Photoshop and my i7+10gbRAM computer was unable to handle it. I think very simple stuff like annotating and cropping/red-eye fix can be done but I think a web based photo editor will fail when huge performance is required.

<comment><USER23> Not sure what your exact setup was, but your graphics card might simply have run out of memory. Which would then have happened pretty much independently from the software you were using.

</comment></comment></comment><comment><USER24> This took to long to happen, Congrats for them.

</comment><comment><USER25> Anybody knows the deal amount?</comment>


The Crystal Programming Language - <AUTHOR> https://github.com/crystal-lang/crystal <comment><USER2> I've been using and contributing to Crystal since 2015 and i can easily say that it's really great potential. It's simple, fast and productive from day 1.

I wrote a web framework ([http://kemalcr.com/](http://kemalcr.com/)) and it's in production without any problem for more than 1 year on a big scale app. You can check my slides for some interesting graphs ([http://www.slideshare.net/sdogruyol/kemal- rubyconfbrasil-201...](http://www.slideshare.net/sdogruyol/kemal- rubyconfbrasil-2016))

Also be sure to check out [http://crystalshards.xyz/](http://crystalshards.xyz/) to discover Crystal projects(shards).

<comment><USER3> What a surprise to see crystal at the top of HN again! I've been using and contributing to crystal since 2015 too, and I've come to really love the language and community. A big thank you to all the community for being so welcoming!

What I've felt with crystal is that I find it an immensely practical language. Maybe that stems from the compiler being written in crystal. The stdlib has so many things in that make everyday work in the language a joy. For example JSON/YAML/DB.mapping which help you map objects between JSON, YAML and the DB (they're also really fast). Including a standard, performant http stack in the stdlib is a breath of fresh air. The performance of evented io in general is really nice. The concurrency story (channels + fibers) is simple, and doesn't show itself when not required (looking at you nodejs). Most of all, the type system gets out of your way and usually only shows itself when you're making a mistake.

<comment><USER4> _What I 've felt with crystal is that I find it an immensely practical language. Maybe that stems from the compiler being written in crystal._

The question is, how easy is it to make syntax-driven tools? One thing that Ruby never did quite as well as Smalltalk was having low cost of entry for creating language parsing tools on the language itself. (At one time, there were multiple online study groups of multiple people trying to parse Ruby working for over a year. With Smalltalk, you can start hand-coding a top-down parser in the morning and be mostly done in the afternoon.)

 _Most of all, the type system gets out of your way and usually only shows itself when you 're making a mistake._

Sounds ideal!

<comment><USER3> > The question is, how easy is it to make syntax-driven tools?

You can actually require the lexer and parser portions of the compiler in crystal code, and get an AST from a file relatively easily. The crystal compiler then has tools for easily walking the AST.

</comment></comment></comment></comment><comment><USER5> Go's PASCAL. :-)

Interesting language, looks especially interesting for rapidly throwing things together. Add a solid API to a window system toolkit and you've got a logical successor to Visual Basic.

Write an editor, cross compiler for some other language, and a shell in it. That will tell you if it is a good "systems" language.

Write a distributed service, a web application, and a database in it. That will tell you if it is a good "web" language.

Write a physics simulator, a responsive AI, and a real time user interaction model in it. That will tell you if it is a good "game" language.

Write a convolution, a linear regression, and a monte carlo simulation in it. That will tell you if it is a good "modeling" language.

In my Christmas wishlist is a language that I can write a good 3D CAD package in. The current choice is C++ but that can be really clumsy in many ways. Such a language would have a strong linear algebra library and a boolean solids package. Nobody is working in that problem space from a language perspective as far as I can tell.

<comment><USER6> Linear Algebra is already a solved problem - there's no need to rewrite the many established C/C++/Fortran code that has been optimized for linear algebra over the last 40 years.

Why re-write what has already been done? Stand on the shoulders of giants.

<comment><USER7> > Why re-write what has already been done?

Because we can do better. For example, look at Mir GLAS, written in D.

[https://github.com/libmir/mir-glas](https://github.com/libmir/mir-glas)

<comment><USER6> At a first glance, it looks like the way they're optimizing the BLAS/LAPACK implementations is by making it CPU architecture specific - the same game that IMKL plays. That's probably why they are reaching the same performance as MKL as well.

Good to see they aren't reinventing the wheel, and openly expressing inspiration from Numpy is also a nice touch.

</comment></comment></comment></comment><comment><USER8> Last year's discussion for those interested: [https://news.ycombinator.com/item?id=10014178](https://news.ycombinator.com/item?id=10014178)

This language definitely deserves your attention. It's fast, it's easy on the eyes, and it produces native code. A real workhorse language.

Want Go's speed but hate Go's if err nil verbosity? Check out Crystal.

<comment><USER9> Does it even have built in concurrency?

<comment><USER3> Crystal has an excellent concurrency story built into the stdlib which is on by default. All io is evented by default, with events being fed into the fiber scheduler. The nice thing is that the concurrency and evented io is built just using the stdlib in crystal itself, so it's readable and shows that crystal is quite powerful.

You can read more here: [https://crystal- lang.org/docs/guides/concurrency.html](https://crystal- lang.org/docs/guides/concurrency.html)

<comment><USER9> Lack of parallelism will cause similar problems to what python faces due to global interpreter lock, killing performance. It is 2017 (almost), parallelism should be available in any new programming language.

<comment><USER3> Parallelism isn't easy, so the core team is expending time to get it done correctly and released before 1.0. Crystal doesn't have anything like the GIL, and the compiler already enforces some simple rules, like type flow not being available on instance variables because they could be changed on another thread. You can't expect the world from any new project straight away.

</comment></comment></comment></comment></comment><comment><USER10> I just played around with it. Wow!

Last time this came up on HN I shrugged it off but after playing around with it a bit as a former Ruby programmer I'm in love.

Super simple to compile a little binary and it's blazing fast when I run it. I think I'll be donating some money.

Bonus: Running `crystal init app <appname>` dumps out an opinionated starter project layout for you complete with travis.yml, test specs, and README. Maybe it's the old Rubyist in me that digs a little convention but this is certainly a refreshing departure from JavaScript madness.

<comment><USER11> You also have 'crystal tool format' for some more opinionating.

<comment><USER10> Love it! Go flavored ruby.

</comment></comment></comment><comment><USER12> _" The compiler is written in Crystal."_

If there is any stress test worth noticing it's this. 98.2% of the code is written in Crystal.

</comment><comment><USER13> I write aviation software (i.e. running real time in aircraft) - not safety related in any way - and I use Ruby.

I use it because iterating quickly and being super productive means I can do more myself and keep the team small. And it's worked brilliantly.

So throw this into the mix and my world just got a whole lot better. It's like these folk designed this for my project.

Good luck guys!

<comment><USER14> Sounds really interesting! Have you written anywhere about how you got involved in that? I'd be curious to know how one sells into the airline industry.

When you say "not safety related in any way", do you mean that your code runs on auxiliary systems, like the entertainment platform?

<comment><USER13> It's software to tell the pilot where to go (who in turn uses the autopilot quite often), and software to point the camera in the right direction and trigger cameras (pointing at the ground).

All up it's 9 processes talking to each other over zeroMQ.

Most are ruby, the camera and IMU are C++. Due to using a simple messaging system I can throw other languages in. Only one part uses any significant CPU and maybe Crystal can help with that. Should be easy to port over.

<comment><USER15> do you have a website ?

<comment><USER13> [http://ground.vu/](http://ground.vu/)

</comment></comment></comment></comment></comment><comment><USER16> Huh, this is in interesting feature: [https://crystal- lang.org/docs/syntax_and_semantics/union_typ...](https://crystal- lang.org/docs/syntax_and_semantics/union_types.html)

If you have code paths that set a particular variable to different types, it promotes the type of the variable to a union. I'm not convinced that's a good idea, but then I don't usually use dynamically typed languages; perhaps this is the most natural way to do static typing for people who come from languages like Ruby.

<comment><USER11> In practice, it accomplishes two things. It is the tool used to catch null pointer exceptions at the compile stage and it is what allows you to write duck typed interfaces.

<comment><USER17> RE: NPE's - I have a feeling that'll be abused just like void * and interface{}. People will just start throwing Nil around everywhere as a catch- all. You need a stronger construct like Option<T>, Maybe, language-level nullable types, or a mechanism for the caller to handle it dynamically (a la unwind-protect/conditions).

The problem you end up getting is basically the dual of the 'expression problem'. You get easy type expandability with class augmentation by these semantics, but any client of the type is subsequently bound to deal with any augmentation of the type. (I.e., if in the method defining class 'a', you insert an elseif in between the consequent and the alternative of type Bool, you now just extended the class signature of 'a' to Int32 | String | Bool. Assuming all consumers of 'a' need exhaustive handling, you've opened your class and extended its functionality at the expense of code which had previously satisfied the dependencies to consume 'a' safely.

Crystal still remains a real interesting project to follow. I haven't examined the Crystal type system too carefully, but the concept of Parent+ as virtual types is an interesting concept that is certainly worth exploring.

<comment><USER3> Because crystal's nil type can have methods on, it already feels like an Option<T> with `#try`. We've had a lot of discussion about nil handling, but haven't come up with a better solution yet. Simple patterns like `return/raise unless foo` can protect the rest of a method body from nil without adding indentation.

</comment></comment></comment></comment><comment><USER18> Seems like there's a new language popping up every few weeks. This seems strange when the trend in human languages seems to be towards a single common tongue, or at least a common lingua franca.

The same seems true of mathematics. At least in the parts that get commonly taught, we trend toward a common representation.

In programming, it seemed like we might move toward a core "C-like" syntax with various derivatives, for a while.

But now we seem to be moving toward a world where everyone wants to create their own domain-specific language.

I can't help but long for a common tongue. One which allows developers in different domains to understand at least the functionality, if not the motivation without having to learn a new language.

<comment><USER19> I couldn't disagree more strongly. DSLs are at the heart of efficient programming because they encourage separation of concerns; that's why the Unix shell is so powerful, fundamentally it's a collection of different programming languages with well-defined interfaces for communication.

Secondly, personally speaking I've never had much difficulty understanding programming languages I'm unfamiliar with provided their syntax is sufficiently similar to those I use. For example, I've never much worked in Ruby but glancing at Crystal there's nothing really confusing about its syntax. Yes, we see new languages popping up here almost weekly, but we don't see new paradigms: usually most of the stuff here is procedural and on occasion it's functional. Furthermore, having seen the remarkable benefits the introduction of different paradigms has had for the community at large (think about a world without LISP for a moment) I for one believe we should encourage the development of new and strange ideas; most of them will fail, but every so often we might get a new world.

<comment><USER20> >>I've never had much difficulty understanding programming languages I'm unfamiliar with provided their syntax is sufficiently similar to those I use...

Oddly enough, I've just been thinking the opposite. I've been looking for a compiled language to learn, to add to my basic tinkering knowledge of Python.

From my shortlist of Crystal, Go and Nim, I opted to look at Nim first, as it has the most Python like syntax. I've actually found that to be a hindrance. Nim's close enough to Python that it fooled me into thinking it would be a doddle to learn, but just different enough that I constantly run into compilation errors from assuming [yes, I know!] that basic language constructs will be written the same in Nim as they are in Python and then falling foul of some subtle difference.

I'm actually considering moving my sights to Crystal or Go now, in the belief that they'll be different enough from Python for my brain to jolt out of 'muscle memory' mode and pay more attention to taking in the 'new stuff'.

<comment><USER21> Just learn C or C++. There are way more materials for learning them, and it's certainly different from python. You'll learn things that you would never learn while writing Python, which is the goal.

If you know C++ and Python, you can pick up most mainstream languages. If you learn a more functional language afterwards, you'll basically be able to pick up anything.

</comment></comment></comment></comment><comment><USER13> Try searching the web to see if/how it works with Gems. Go on, I dare you... 'ruby crystal gem', 'crystal gem', ...

For that matter, crystal vs elixr.

Kind of wishing all these projects just had made up names.

<comment><USER11> Crystal use something they call shards. They are extremely basic though and are really waiting for someone to write a more full-featured package manager.

<comment><USER22> It looks like the point still stands.

First google result: [http://terraria.gamepedia.com/Crystal_Shard](http://terraria.gamepedia.com/Crystal_Shard)

<comment><USER23> Just add "programming" to the end of the search and it won't give you any gemstones or cartoons.

</comment></comment></comment></comment><comment><USER24> I wonder how Ruby will compete with this. Crystal basically seems like Ruby 3.0 to me (major improvement is speed, btw Ruby is currently on 2.*).

<comment><USER25> Pretty easily. Crystal looks like Ruby, but it doesn't feel like Ruby or work like Ruby. It seems fine, in a very Golang "it works for projects where you need to fling a blob of binary somewhere" sort of way, but it's not remotely as dynamic-as-a-language as Ruby (and that dynamism is precisely _why_ I use Ruby), nor is it dynamic-as-a-platform--something like CLR assembly loading or Java classloading to get a statically-typed, reflective representation that gives me something similar. And you might not need that, and it's totally cool. But Ruby enables a lot of things Crystal, as designed, seems unable to.

It's not bad. It's fine. Not the pejorative, dismissive sort of "fine", but fine. But it's not Ruby. Ruby is slow in large part because Ruby does _hard things_. Some of them aren't really advisable, from a perf perspective--but they are from a human perspective, and Ruby preferring humans over computers is a huge feature for me.

<comment><USER26> You sum up my finding on Crystal really nicely.

I wish I could upvote your comment more than once.

Crystal is nice but I've found simple dynamic things to be a challenge. I haven't looked in a few months but I wasn't able to do this

 _a = []

a << 1

a << "two"_

Same with hashes. This broke some things for me and ended up feeling like I wanted to program in Ruby but there were all these gotchas.

If I have to break the mental expectations I have for writing something to get the performance needed, then I'm fine to switch gears and write Java or C in order to get it.

<comment><USER3> You seem to make the assumption that crystal's purpose is to be for ruby developers, and as soon as it deviates from ruby, you've switched gears and might as well use Java or C.

I don't think that's the case. Crystal takes its syntax from ruby because it's easy to write, easy to read, and familiar, it doesn't have to be the same as ruby in semantics. In fact that's impossible because it's statically typed (which I personally prefer to ruby).

If you're going to resort to Java or c for speed, why not use crystal? Crystal beats Java and c on expressivity of type system, expressivity of code (less boilerplate) and performance per unit effort (at least on common tasks). So the question is why Java or c? They both certainly have larger and more mature ecosystems, and if you have compute-heavy workloads they'll probably win out on performance, but why do you instantly make the leap from crystal != ruby to "might as well use java/c"?

<comment><USER3> Actually, I'll expand on that and say that crystal isn't "static typing for rubyists", its more like "the best bits of ruby applied to static typing". There's a big difference in that the bits of ruby that crystal chooses to take may not be the parts that are most familiar to rubyists. That it is so similar to ruby is a huge complement to ruby in that there was so much that the team wanted to take.

The hardest part of learning crystal for rubyists is unlearning their ruby habits when working on crystal. Once you're over that hill you might find crystal a wonderful language in its own right.

<comment><USER26> I agree and that's my original point, in order to use Crystal I need to unlearn things. I guess I'm lazy enough that the performance benefit isn't a big enough benefit for me to trade off the flexibility of Ruby.

Nothing against Crystal, I think it's great but it would almost have been better coming to Crystal from something other than Ruby.

</comment></comment></comment></comment></comment></comment><comment><USER27> An interesting thing: [https://github.com/crystal- lang/crystal/blob/master/src/conc...](https://github.com/crystal- lang/crystal/blob/master/src/concurrent.cr#L31-L57)

Looks like they took the Fiber concept of ruby and made it into something like goroutines, with channels handling.

<comment><USER2> You can take a look at Crystal for Rubyists ([http://www.crystalforrubyists.com/book/chapter-08.html](http://www.crystalforrubyists.com/book/chapter-08.html)) for more info on Channels and Fibers.

<comment><USER27> Actually, I'm now a golang developer, so there are no big surprise, here ;)

</comment></comment></comment><comment><USER28> I'm by no means a very experienced programmer, but what was the motivation behind choosing `nil` over `null`? Seems like, from my inexperienced perspective, it was just designed to add unneeded idiosyncratic syntax/semantics to distinguish it from Ruby and/or C.

Can't comment on anything more than that right now. Have yet to dive very deep into it.

<comment><USER29> There are probably as many languages using "nil" as there are ones that call it "null".

Nil: Ruby, Go, Oberon, Modula-2, Swift, various Pascal dialects, Lisp?.

Null: C/C++, Java, Rust, JavaScript, Ada.

Then, of course, there's Python with None.

<comment><USER30> Rust deliberately doesn't have anything in the language called "null" (there's `std::ptr::null()`, but that's for C interop). The only thing that fits the bill here is the unit type/empty tuple, `()`, which is sometimes called "nil".

<comment><USER31> I know, but it's "std::ptr::null", not "std::ptr::nil", which was the point of this discussion. (Clearly it has a concept of null pointers, even if they're used in a more limited manner than other languages.)

<comment><USER30> But you can't use `std::ptr::null()` in the same way that you use null in the other languages mentioned there. It's literally just there for C interop, and it's called that because that's the terminology that C uses.

For finding an analogue for the typical null use case in Rust, one would use the `None` variant of the `Option` enum.

<comment><USER32> Nitpick: `std::ptr::null()` is not _just_ there for C interop. It's also useful when writing pure Rust unsafe code.

<comment><USER33> Can confirm, used null all the time in Rust. The raw pointers are important native Rust constructs, although they do skew to supporting C idioms as much as possible (e.g. `* const T` and `* mut T` is basically a worthless distinction within Rust itself).

</comment></comment></comment></comment></comment></comment></comment><comment><USER34> Wow. Genuinely fast: benchmarks usually somewhere between C++ and Java, orders of magnitude better than Ruby. [https://github.com/kostya/benchmarks/blob/master/README.md](https://github.com/kostya/benchmarks/blob/master/README.md)

<comment><USER9> Try something that is more its weight, like Rust.

</comment></comment><comment><USER35> I thought about using Crystal for some roguelike game I wanted to program (but alas with a new baby do not have the time for anymore).

The reason being that it is OOP. I eschew OOP (particularly for biz software which is my day job) but have to admit OOP still is a pretty good fit for UI and video game programming. I tried some reactive FP game programming and I just didn't make as much progress as I would have liked.

I tried googling for some roguelike crystal programmed games and didn't find any yet (it is difficult because crystal has lots of conflicts particularly with rpg like games)....

</comment><comment><USER36> I am really invested heavily in ruby, I've been using it for years, like 10+. I should be natural target group for this, yet, while I appreciate all the features, I really feel that something like Elixir is better suited for future.

Also, even though I spent years writing ruby, I don't have problem switching to other languages.

<comment><USER37> Can you give details why you "feel" that way about Elixir?

<comment><USER38> I feel the same way about Elixir here's why:

\- docs

\- testing

\- Slack chan, IRC, mailing list

\- package manager (Hex)

\- build tool (Mix)

\- web framework (plug & Phoenix)

\- db framework (ecto)

\- books from major publishers (manning, pragprog, etc.)

\- ElixirConf

\- ancillary teaching (ElixirSips, LearnElixir, Elixir Fountain, etc.)

\- helpful blogposts and stack overflow answers

All these things sum up to lower barriers of entry when trying a new language. Elixir has it in spades. It's really easy to pick up and learn the syntax and predicates of the language (BEAM, OTP, etc.)

Even though Crystal is closer to Ruby in syntax and Ruby __can be __valid Crystal -- Elixir still feels easier, because there is less work to be done with learning everything else.

<comment><USER36> Without taking anything from Crystal, because there is nothing wrong with Crystal...

Elixir has so many superstars working on/with it.

</comment></comment></comment></comment><comment><USER39> I'm sorry if I'm missing this, but what's the distribution story? Does it produce stand-alone binaries? In other words, can you just distribute the generated binary without requiring the user to install a runtime package or a bunch of libraries or whatever?

<comment><USER11> It produces standalone binaries. I'm not certain the cross compilation story is in place yet though.

<comment><USER3> To expand on that, it produces dynamically linked binaries so you do need libevent, libpcre, libgc etc. when you want to run crystal binaries. We hope to get the number of runtime dependencies down in the future.

<comment><USER40> But, Also you can try static linking :-)

\--link-flags="static"

The output binary is bigger than dynamic linked and it would needs some dev libraries before compile.

<comment><USER39> Sure, it's going to be bigger. Not a problem, as long as it works. :-)

Requiring the user to install a separate bunch of dependencies adds a huge amount of distribution friction vis-a-vis just shipping a stand-alone application bundle, especially in this day of app stores. Being able to avoid that is very important, IMO.

Probably anyone reading this isn't going to be daunted by having to install some extra stuff, but for the average user it's a real pain.

</comment></comment></comment></comment></comment><comment><USER41> Sounds like it has most of the same goals as Swift. I wonder how they compare?

<comment><USER42> They are both LLVM languages. But I remember reading that Swift was just barely slower because of the reference pointing or something. Obviously I'm not a reliable source for performance metrics.

</comment></comment><comment><USER43> I find ruby plenty fast enough for sites in the 1k/min requests range, but I have serious problems getting it to run fast enough with websockets. Even 40 concurrent websockets connections through ruby is enough to bring down my hosts.

Does anyone have any experience using this with websockets? How does it perform?

<comment><USER3> Crystal has websockets built into the standard library, and as with almost everything built in crystal it uses evented io. Here's a benchmark: [http://serdardogruyol.com/benchmarking-and-scaling- websocket...](http://serdardogruyol.com/benchmarking-and-scaling-websockets- handling-60000-concurrent-connections-with-kemal)

</comment></comment><comment><USER44> It looks very nice, I like that you can have beautiful syntax and performance at the same time.

But it lacks a modular interface for modules and libraries that does not import hidden/global variables. They should look at NodeJS for inspiration.

<comment><USER3> Ruby is quite a large language with a large ecosystem of libraries, but I have never seen or heard of major issues with module name clashes. Libraries tend to have quite unique names and stick to their modules. Crystal works pretty much the same, so I personally don't think a change is needed.

</comment></comment><comment><USER45> Looks good.

I don't like all the 'end' statements though.

<comment><USER46> Here are the reasons for 'end': [https://github.com/crystal- lang/crystal/wiki/FAQ#why-isnt-th...](https://github.com/crystal- lang/crystal/wiki/FAQ#why-isnt-the-language-indentation-based)

<comment><USER45> "there's no point in trying to suggest changing the language to an indentation-based one"

Ok. Bit of a bummer though.

</comment></comment></comment><comment><USER47> Very nice. Something to keep an eye on.

</comment><comment><USER48> Can I create a shared library with it? Can it be used to write a ruby extension?

<comment><USER3> The answer is technically yes but you probably don't want to. Crystal comes with a managed runtime and gc, which are particularly unsuited for use in a shared library. However you can export c functions (it's a hidden feature) and they do work.

Creating a ruby extension in crystal also works and there are a number of libraries which attempt to allow you to do this (too many in fact). They do the hard work of getting crystal to play nice with the ruby extension api for you.

</comment></comment><comment><USER40> What are the issues or features that crystal needs to solve before 1.0?

<comment><USER49> One would be parallelism. Not sure if the maintainers want to target that though before 1.0 .

<comment><USER46> We do, and we will. We are working on it :-)

</comment></comment></comment><comment><USER50> How does this compare with Go? tech and non tech things?

<comment><USER40> The first item is the syntax, Go use braces while Crystal is Ruby based syntax.

Go has full parallelism support. Crystal is WIP.

Go has Windows support. Crystal is WIP.

Crystal and Go performance are very similar.

Go is backed by Google and his community since 2009.

Crystal is backed by Manas.tech and his community since 2012.

Go has full featured IDEs like [https://www.jetbrains.com/go/](https://www.jetbrains.com/go/)

I hope to have Crystal IDE support after 1.0 :-)

<comment><USER50> So I'm happy with Go as long as Crystal gets more features

</comment></comment></comment><comment><USER51> Thoughts on the conservative garbage collector? How often is it a problem?

<comment><USER3> Crystal uses libgc, from the readme: [0]

"Since the collector does not require pointers to be tagged, it does not attempt to ensure that all inaccessible storage is reclaimed. However, in our experience, it is typically more successful at reclaiming unused memory than most C programs using explicit deallocation. Unlike manually introduced leaks, the amount of unreclaimed memory typically stays bounded."

Having used the language for a year, I've never really had an issue with the gc other than with really large (think 100mb+),infrequrnt, single allocations which get "stuck" and don't get returned to the OS after. This is a by product of the gc being unable to move objects to compact the heap. This situation can usually be rectified by loading a large file as a stream instead of loading it all into memory. Crystal has excellent tools for working with streams (see IO module) however, so it's not that big of a deal.

</comment></comment><comment><USER52> Why language differ syntactically? I understand different platform, runtime, optimisation needs etc. But why syntax ? C is sufficient for most logical implementations, at most we will need hierarchy of implementations but why parallel indecipherable syntax?

<comment><USER53> > C is sufficient for most logical implementations

How do you know this to be true? You don't - it's just an opinion. And that's why we have different syntaxes - because they're driven by different opinions. If you could prove that one syntax was more effective than all the others - for every purpose that people needed - then you could ask why everyone wasn't doing it that one way.

</comment></comment><comment><USER54> Ruby?

<comment><USER3> No, actually Crystal.

</comment></comment><comment><USER55> Floats defaulting to Float64 instead of Float32 seems wasteful.

<comment><USER40> Untyped number literals is the second issue with more number of +1 reactions.

[https://github.com/crystal- lang/crystal/issues/2995](https://github.com/crystal-lang/crystal/issues/2995)

</comment></comment><comment><USER9> Not strong enough of a package. Add some features to sell it. Safety, design features, testing support, concurrency and more...

<comment><USER56> You must not have taken a very close look because the concurrency story is already great (and will one day turn in to a great parallel story), the built in testing library has a very useful set of assertions and an RSpec like BDD syntax, and safety far exceeds Ruby -- the compiler knows the type of all variables and won't ever let you make an "undefined method foo for Nil class" type of error.

<comment><USER9> It is a library, not a part of the language. I can have a great testing library in any language. By language I mean actual language, keywords, syntactic constructs. Formal logic descriptions even.

I haven't looked closely enough, the concurrency looks decent but it's not as integrated as in certain other modern langs (e.g. Go, Erlang or certain other FP languages, even certain ones riding on JS)

It is sad to see something this outdated starting up now...</comment></comment></comment>


What's The Next PHP Stack? - <AUTHOR> http://www.littlehart.net/atthekeyboard/2008/03/14/whats-the-next-php-stack/

<comment><AUTHOR> I'm more interested in his points on the server component of things, comparing Mongrel for Ruby and also mentioning nginx.

I dont have any experience with nginx but have heard good things. What are your guys' thoughts?</comment>


How Marvel Became the Envy and Scourge of Hollywood - <AUTHOR> http://www.hollywoodreporter.com/news/how-marvel-became-envy-scourge-720363 <comment><USER2> Am I a dork for noticing the mistake that the second _Thor_ movie wasn't a prequel for _The Avengers_?

<comment><USER3> Unless I'm misreading the article, I don't think it says that _Thor: The Dark World_ was a prequel to _The Avengers_. Rather, it says that the Thor movies were planned as part of the "Avengers initiative." The confusion arises from the phrase "set the stage for _The Avengers_." I think what the writer means is that all of these movies, including their sequels, were set into development as part of a single initiative, meant to culminate in the Avengers franchise.

Yes, the events of the second Thor movie take place after the events of _The Avengers_. But that may have been planned well in advance.

<comment><USER4> I am particularly amazed at the co-ordination of the movies and the TV series Agents of Shield. Way back when I was at USC professor Arthur Knight used to joke about movies "You can know when it will be done, or you can know it will be good, but not both." because of the challenges of managing a movie production schedule. That Marvel could pull off Thor: The Dark World, have it hit theaters when events in the TV series matched up, that floored me.

<comment><USER5> Not only that, but they did it a second time with Captain America: Winter Soldier.

<comment><USER4> Your right, not once but twice in a single TV season. That is seriously amazing planning.

<comment><USER2> I think lots of people would balk at those constraints, but Joss Whedon sees them and thinks "this is awesome!"

</comment></comment></comment></comment></comment></comment><comment><USER6> So far, Marvel is on a roll, like Pixar was for a time, racking up a string of successes. Guardians of the Galaxy seems to be another home run. But how long can they keep it up, and will hype and fan expectations make Avengers 2 an inevitable let-down?

<comment><USER7> I'm predicting an entire X-men reboot done more in the style of the Avengers movies. To date, the effects, casting and story for the X-men movies, while fine for the time, have been a big downgrade from the entire Avengers line-up.

> hype and fan expectations make Avengers 2 an inevitable let-down

I'm hoping it isn't. The second Captain America movie was a huge upgrade over the first IMHO, and I thought Thor 2 was at least as good as the first one. The Iron Man movies have been relatively good as well (sure they're going down a bit, but they're at least entertaining).

If the 80s were the action star decade, the 2010s are the Marvel movie decade.

<comment><USER8> Marvel sold the X-Men rights to Fox, who retains them as long as they continue to make X-Men movies (the same is true for Sony with Spiderman). It's unlikely that Fox will relinquish those rights within the next 10 years.

</comment></comment></comment><comment><USER9> What's also interesting is there seems to be a desire in the fanbase for Marvel Studios to have _more_ control over Marvel properties. I get the impression from comments in reddit posts and Slashfilm (which might not be an accurate barometer of reality) that fans are chomping at the bit for Sony and Fox to lose the rights on X-Men and Spider-man, so that Marvel Studios can start making movies with them.

<comment><USER10> Those fans want to see cross-overs. They want to see Spiderman on The Avengers. They want to see the Hulk duke it out with Wolverine.

The likelihood of this happening when multiple studios control the characters in question is slim to none.

</comment></comment><comment><USER11> And I haven't seen a single one of those movies. Are they worth it for someone not into comics at all and a slightly dislike for superheroes. Of course I saw most of the trailers for the movies but the only one that looked appealing to me was the trailer for the second Captain America movie. Can this movie be watched without having seen the other moviews? I also read good things about the S.h.i.e.l.d series.

<comment><USER12> If you're not into comics and dislike superheroes, it's pretty hard to imagine what you'd get out of a superhero movie based on a comic book franchise.

<comment><USER13> Eh, I'm pretty apathetic to superheros have a dislike (possibly disdain) for comic books. I still enjoyed those of those movies that I have seen. (I liked the first Iron Man the most; and thought that The Avengers was quite good but nevertheless incredibly overrated).

<comment><USER14> imo, the dark knight is a good movie despite it being a comic book superhero movie. v for vendetta too.

</comment></comment></comment></comment><comment><USER15> Funny how a Disney subsidiary can be seen as independent mavericks.

<comment><USER16> Or that tech geeks get enthusiastic over Disney products despite Disney's recurring efforts to lock-down the Internet.

There is some serious marketing magic happening here.

<comment><USER17> It's not always about marketing "magic". They have a killer product. Marvel and Disney produce superior entertainment, despite their politics.

</comment></comment></comment><comment><USER18> People, especially children and young adults will always be interested in super heroes, Marvel will have a long and successful run.

</comment><comment><USER19> It's true; I feel like I can't go to any entertainment news site without being inundated by Marvel news.</comment>


Is Free The Future Of Enterprise Software?  Yes And No.  - <AUTHOR> http://www.techcrunch.com/2009/07/12/guest-post-is-free-the-future-of-enterprise-software-yes-and-no/

<comment><USER2> _Free is a marketing tactic_

This reduces the need to do "sales" as much - attractive for techie entrepreneurs.

"Free" is easier to implement for SaaS, but you can still do it for products, with a demo. The problem here is that the a time-limited or cripple-ware demo won't become as entrenched in the user's workplace as a SaaS version that is limited by the amount of use, or by the number of users etc. That is, a limit that allows the user to get some real value from you, ongoing, for free.

Actually, now that I think about it, of course you can limit a product in the same way as a SaaS version. Some limits are easy to enforce (e.g. number of contacts in a database), and for some you need to add management code or architecture (e.g. to monitor how often it is used). More code is always more complexity, and harder to test because it's interacting with the outside. But you can always just _say_ what the limits are: communicate it clearly your website, in the license/contract, and in the product. Most people like to play by the rules, if they know what they are.

 _EDIT_ Although, I guess, if the software is entrenched, and it's a hassle to buy it, and it's still working... many businesses might find it hard to make the purchase. But the enterprise tends to be very organized about that kind of thing. ah... it's probably best to enforce the limits, if you possibly can.</comment>


Show HN: I've built yet another distraction free writing app which exports LaTeX - <AUTHOR> https://www.monsterwriter.app/ <comment><USER3> Very nice feature set! I especially like the referencing functionality and ToC. Though I wasn't able to test it out (stuck with Windows at work), here's some feedback:

In the example images, you write that you eliminated all toolbars - this is arguably false since I see a vertical one on the very left ;-). I would even get rid of this one and move the ToC to the left edge of the window. You can keep the help button (move it next to the MacOS window controls) and maybe even the export button (also next to window controls) but I'd rather make use of the system UX and use the MacOS toolbar instead (same for the preferences button, it's useless if you make use of the OS functionality).

I'd love to give this to my coworkers for their Wiki drafting, right now I have too many issues with people copying from Word and the system trying to do ... something with that input. Unfortunately, only Windows flies here ...

<comment><AUTHOR> Thank you for the feedback :)

You've made a point with the toolbars. I have to get a Window machine and build the app for Windows too. I will decide then what to do with the toolbar and how it will look like with the native toolbar on window.

If you send me a mail (click the Feedback button on the website) I'll put you on the list with those people how receive a free version because of early feedback :)

</comment></comment><comment><USER4> There's some funky animation going on at the top. When I press space bar to scroll down, it skips over the Features section.

> We use cookies to ensure that you have the best experience on our website.

What does this mean? Why do you show me this? It's a static page!

<comment><AUTHOR> Thank you for pointing out the space bar issue. A cookie is set by google analytics.

</comment></comment><comment><USER5> "Use Lists, Tables, Figures, Code Sections, Footnotes, Cross-References, Citings, Tables of Contents, ..."

Is there support for math? Weird if it doesn't since it exports to LaTeX.

<comment><AUTHOR> It's on the roadmap. There are a lot more things to do. Would be happy if you could help to bring them into an order and upvote your favorite feature:

[https://docs.google.com/forms/d/1jF6Xs_7Kd46NJVbxtOMwZ0G6QKu...](https://docs.google.com/forms/d/1jF6Xs_7Kd46NJVbxtOMwZ0G6QKuwScDT7FASeTr92HU)

</comment></comment><comment><USER6> If it has VIM keybindings, I'll pay. If not, not -- LyX is good enough if I'm not getting VIM keybindings.

<comment><AUTHOR> Thank you for letting me know. Which bindings do you use the most?

<comment><USER6> Thanks for asking!

VIM keybindings means modal editing first and foremost, so:

      - ESC -> whatever that mode is called, where you get to use
        h, j, k, l, and other movement operators, d, c, r, R, I,
        o, O, etc to make edits and enter insert or replace mode,
        y/Y for yanking (copy), p/P for pasting, and so on

      - buffer registers

      - <USER2>

      - : -> ex command mode where you get to enter ex commands
        (e.g., global search and replace, save, switch files,
        quit, and so on)

Of these the first is the most important -- I can do without ex command mode. I can also do w/o vimscript and all of the various features of VIM such as syntax highlighting (which is really not appropriate in a WYSIWYM/WYSIWYG LaTeX document context).

For editing documents with variable-width fonts I don't need ^V (rectangular block selection) for obvious reasons, but visual selection ('v') is still useful.

While in input mode it's nice to have ^D serve to reduce indentation (list depth in this context).

You should also have Emacs keybindings -- again, a subset will do.

ISTM that there are many offerings in this space, and I'll take LyX any day (because it's free and open source and it works), so you need something special to sell into this space, such as:

      - online collaborative editing
      - VIM keybindings
      - Emacs keybindings
      - a powerful DSL for transformations
        (this is why XML doesn't suck for _documents_: XSLT/XPath)
      - ...

<comment><AUTHOR> Thank you for letting me know! I do not think that keybindings will be the next ting i'm adding.

The app is based on a custom JavaScript editor. I've started the development of this editor three years ago. It mainly took me so long because I've build it with collaborative editing in mind.

Today I would probably use ProseMirror for that, but back then I've decision to build a custom solution.

So collaborative editing is one big topic I've planed to introduce next.

</comment></comment></comment></comment><comment><USER7> When Linux?

<comment><AUTHOR> I think it will become available in one month. You can subscribe here to get informed: [https://www.monsterwriter.app/newsletter.html](https://www.monsterwriter.app/newsletter.html)

</comment></comment><comment><USER8> Mine's called org-mode, but you have to uninstall tetris first...

<comment><AUTHOR> org-mode is good but not everybody's first choice. For what are you using it for?

<comment><USER8> my work lab notebook.

i also write scientific manuscript drafts with it, as well as whitepapers and the like. And my emacs config, of course, though that's hardly distraction free.

the kitchin group at CMU blogs regularly on how to get the most out of using org to treat LaTeX as an IR, with fairly awesome success: [https://kitchingroup.cheme.cmu.edu/blog/category/orgmode/](https://kitchingroup.cheme.cmu.edu/blog/category/orgmode/)

<comment><AUTHOR> "And my emacs config, of course, though that's hardly distraction free." :D love to read this :D

</comment></comment></comment></comment><comment><USER9> YADFWA

<comment><AUTHOR> YADFWA? Seems to be an unGoogleable acronym :D

<comment><USER10> "Yet Another Dumb F __*ing Writing App " is the best I can come up with. Which, if I'm right, is not really helpful.

<comment><AUTHOR> IMO it might be true for markdown editors but not for writing apps.</comment></comment></comment></comment>


Ask HN: Your server costs vs uniques/month - <AUTHOR>

About how much do you pay in server costs per month for your app? And with what service? <comment><AUTHOR> Heroku-- ~20k Uniques per month, $160</comment>


Strange but True: Helmets Attract Cars to Cyclists - <AUTHOR> http://www.scientificamerican.com/article.cfm?id=strange-but-true-helmets-attract-cars-to-cyclists <comment><USER2> And for even more room, wear a skirt: <http://forums.teamestrogen.com/showthread.php?t=24177>

</comment><comment><USER3> Helmets: bad; Naked head: good; Wheel-scythes: awesome.</comment>


I want to teach Growth Hacking for free - <AUTHOR>

Marcademy.com is thinking about creating a Fellowship program to teach for free Online Marketing and become a Growth Hacker to 20 - 40 SFO/Bay Area college Seniors during their senior year. Program would be 8 months (Sept '13 - April '14) and include monthly in-person weekend immersion events. There would be no cost to the students. We'd get paid by an employer if we got them a job when they graduated. There would be no obligation that students would have to take a job from one of our sources. So for the student it would be entirely free. Would like thoughts on this. <comment><AUTHOR> BTW this post is about a new program, not the one on our website. The one on the website is about an 8-week paid program. What I am looking for feedback on is creating a new 8 month free Fellowship for college seniors to help them build skills to increase their chance of getting a job.</comment>


Ask HN: Encrypted cloud storage? - <AUTHOR> I'm running out of space on my laptop and would like to move some old files to the cloud. I also have old files on a couple of USB sticks and external HDs that I'm a bit paranoid about losing so I'd like to move this data to the cloud as well. What's a good solution for that type of problem? Since some of that data is sensitive, I would require a solution that supports encryption. <comment><USER2> Keybase.io might be a solution. Not sure how much space they give though.

</comment><comment><USER3> Do you know about SpiderOak? Encrypted backup is their business model.</comment>