Balloon Experiments with Amateur Radio - <AUTHOR> https://en.wikipedia.org/wiki/Balloon_Experiments_with_Amateur_Radio <comment><USER2> We launch about 8-12 HABs a year with K-12 schools across the US. We follow FAA guidelines, and file a Notice to Airmen (NOTAM) as well as contact local officials in the estimated landing zone. [https://www.law.cornell.edu/cfr/text/14/part-101/subpart-D](https://www.law.cornell.edu/cfr/text/14/part-101/subpart-D)

Most of our payloads are under 2.5kg so we can fly on smaller 1000g balloons. There is a shortage of helium currently, but we prefer it over hydrogen because it is an inert gas.

If you like to volunteer your time, the US Dept of Education will be making an announcement in the next few weeks for a CubeSat Challenge. First stage is building prototypes - which of course could be launched in a HAB or High Power Rocket.

You can track a number of our flights on [https://aprs.fi](https://aprs.fi) KK6UUQ. Here is a launch from Saturday that we did with USC and LA Unified School District: [https://aprs.fi/#!mt=roadmap&z=11&call=a%2FKK6UUQ-11&timeran...](https://aprs.fi/#!mt=roadmap&z=11&call=a%2FKK6UUQ-11&timerange=86400&tail=86400)

If you are into this, check out [https://magnitude.io](https://magnitude.io)

<comment><USER3> >There is a shortage of helium currently, but we prefer it over hydrogen because it is an inert gas.

When we did our launch, we originally planned on a Hydrogen launch because we were informed of the Helium shortage. We bought all of our equipment based on Hydrogen being the gas. This is important for those that do not know as Hydrogen equipment has specific fittings so that it will not work with any other gas equipment. This is to prevent accidental/unexpected use of Hydrogen due to it being so volatile.

When we showed up to pick up the tank of Hydrogen, the employee really hesitated selling us the tank of gas. He explained that the flames from Hydrogen gas is colorless, so we could be on fire before we even saw the flames. The flames only display color when the flames catch other material begins to burn. He ultimately exchanged all of our Hydrogen equipment for Helium, and sold us the tank of Helium.

<comment><USER4> Father in law (rest in peace) worked for a while at a hydrogen reduced iron plant. Basically they were baking iron in ovens filled with H2. They had UV detectors hooked up to alarms for this reason.

</comment></comment></comment><comment><USER5> How long do the balloons remain aloft? I wonder how practical a balloon-based emergency communications relay could work after a natural disaster. While high-altitude, long-endurance (HALE) drones carrying communications relays make more sense in some cases, a balloon-based system in a box with it's own helium bottle could be deployed by easily and quickly when needed... but if it's only good for 20 minutes then maybe it's not such a good idea.

<comment><USER6> Ours stayed aloft for about 2-3 hours when I did a launch with my college ham radio club! I can't remember exactly. It got up to ~60,000ft and then the balloon burst, quickly falling back down. We didn't have much of a parachute, so a larger parachute could've slowed the descent greatly. I'm not sure what the laws are about size of parachute/any required descent rates though.

<comment><USER5> Does it make sense to have dual balloons: one smaller one designed to burst at a target altitude (eg: 100,000 feet) and the other, more durable balloon, meant to provide a very slow descent, much slower a parachute? That could extend endurance aloft to several hours.

<comment><USER6> That sounds reasonable to me. Again, not sure as to the regulations around that, if you're allowed to use a balloon that doesn't burst at any point or anything.

Also, realistic bursting altitude is closer to ~60,000ft for most balloons, just FYI.

</comment></comment></comment></comment><comment><USER6> I did one of these last year with my college ham club! Had a blast. We made a custom PCB with some sensors on it that was supposed to transmit data via APRS but it didn't end up working. We think it was because the AVR onboard didn't have enough processing power to reliably generate the audio without missing bits or somehow garbling it slightly (there's no error correction in the AX.25 protocol used by APRS). Thankfully we had a redundant transmitter that did keep it at least sending GPS data, and we had a 360 degree camera on it that got some REALLY cool footage.

AMA about it!

<comment><USER7> I'd love to start on this hobby this summer he'll be 13). I'm not much of a HW or ham guy. What resources would you recommend to get started on our first balloon?

<comment><USER6> You'll want to find out the laws in your area about launching them. In the US, you can launch them freely without necessarily notifying anyone as long as they're below a certain weight and meet other requirements (maximum breaking strength of the line used to attach the balloon to payload, using a radar reflector, etc.) However, it's still HIGHLY RECOMMENDED that you call and let any airports know if you're launching close to one.

Look into APRS and how to build (or you can purchase one) an APRS GPS transmitter, that'll be the most important bit as if that isn't working, you'll very likely never find your balloon. Once that's working, you can use a site like aprs.fi to track the balloon in realtime from a laptop/mobile device and follow it as it flies. Keep in mind it could VERY well travel over a hundred miles. We launched ours from Decorah, Iowa and we had legitimate concerns about wind patterns causing it to fly as far as Chicago.

I'd also recommend looking into how to build a "Fox" and how to foxhunt. That's a big part of these balloon launches too! Once you've gotten as close as you can with GPS (once the balloon falls below a certain altitude, relays will stop picking it up on APRS so you'll have only a general idea of where it fell), you'll want to use a directional (for instance, a Yagi-Uda) antenna and a handheld radio to try to directionally locate the fallen payload. Funnily enough for us, we didn't have to foxhunt since it landed in the middle of a guy's field, when we parked across from his house, he asked what we were up to - he was friendly and just curious - and we told him, he said he thought he saw something shiny in his field and assumed it was garbage blown over from the road or something and let us come over to look at it. Turns out it was our balloon! The shiny thing was the radar reflector.

Then, put whatever you want in your payload really! We used a paint can stuffed with foam (it gets REAL cold up there, like -100F, keep that in mind!) and shoved sensors into it and attached a 360 gopro to the side. You can find stuff about how to build temperature/humidity/etc data logging setups that log to an SD card. I'd also recommend that after you retreive your balloon, go to some place like aprs.fi and download the GPS track data from the launch! Those sites don't keep it around forever, you'll definitely want a copy for yourself.

You can get the balloons themselves quite easily, and welding gas suppliers should be able to get you a cylinder of helium.

Good luck!

</comment></comment></comment><comment><USER8> For anyone interested in high-altitude ballooning, one of my close friends sells high-altitude balloon gear here: [https://www.highaltitudescience.com/](https://www.highaltitudescience.com/).

</comment><comment><USER9> I'm beginning to think that a majority of high-altitude balloon experiments are facilitated by amateur radio APRS transmitters. Balloon launches are also huge PR events and great for students to get involved into science (and ham radio!).

You can see almost every balloons with a ham radio payload currently in the air, in real time at [https://tracker.habhub.org/](https://tracker.habhub.org/)

<comment><USER10> This is one of those projects that I keep telling myself I'm going to do 'next summer'. There's just enough detail for a successful flight that you really have to start working on it months in advance, which is why I never seem to be able to get my balloon off the ground.

One thing I really would like to do is get a stabilized camera and experiment with some rigging that reduces payload rocking. A steerable parafoil recovery is also rolling around in the head. All of these ideas exacerbate the procrastination situation lol.

<comment><USER3> I've done one of these smaller launches with GoPros up to ~90k. It was a very fun project including the research on what equipment to use on our budget, the flight predictions to find a good launch point, to the actual launch and recovery. I would highly recommend doing it to anyone thinking about it. We were a group of adults, but it is definitely kid friendly.

I still want to do another launch with improvements learned from the first launch. All of the improvements definitely require a much larger balloon (meaning more expensive). I now have friends with HAM license so we can use a radio for real-time data transmission. I have my Arduino flight computer with all of the sensors completed. The camera stabilization was the biggest thing I wanted to solve. Many ideas rolling around in my head as well. Might need a 3rd or 4th flight to finesse, you know, for science!

</comment></comment></comment><comment><USER11> I did a bunch of research into this last year. High altitude balloons combine a bunch of super fun science stuff. You've got radio, photography, space/weather research. Plus when it's all done you go on a treasure hunt in the wilderness to recover it! Now if only I had bandwidth outside of work/family.

[https://arhab.org/](https://arhab.org/)

<comment><USER11> And here's the link that started me down the rabbit hole: [http://leobodnar.com/balloons/](http://leobodnar.com/balloons/)

</comment></comment><comment><USER12> [https://ukhas.org.uk/](https://ukhas.org.uk/) has some really good information for people launching balloons in the UK (such as how to track them, along with the power etc. you can use).

I've only tracked one once, using an old scanner and antenna, but I'd like to get a decent collinear antenna to use with an SDR.

</comment><comment><USER13> You can learn a lot about the hardware used over at

[http://qrp-labs.com/lightaprs.html](http://qrp-labs.com/lightaprs.html)

Of course he sells stuff to do it, but there are many balloon flights documented on that site too. Some of them have circumnavigated the Earth more than once!</comment>


Science Funding Needs Charter School Analogy - <AUTHOR> https://medium.com/@jefflab/science-funding-needs-charter-school-analogy-7bee46c88613 <comment><USER2> For those in the know - is there a reason on the funding side for funding less risk averse things? Something about the politics of the NIH that has changed?</comment>


Google's Napoleonic Moment - <AUTHOR> http://www.forbes.com/sites/quickerbettertech/2012/07/09/googles-napoleonic-moment/

<comment><USER2> It's rather incoherent article.

At one point he claims that few years from now we'll all be buying the cheapest tablets made by asian manufacturers who'll outcompete everyone on price, because "no one cares whose tablet we use as long as it does the basic stuff".

Then he contradicts himself by saying that Microsoft will win the tablet war because of more desirable software. I guess we do care about the software in the tablet after all.

More fundamentally, even if Google totally fails in tablet market, they'll still be making money hand over fist from their web ad business and from their youtube video business.

Google doesn't care about profits from selling hardware that much. I'm sure they would like to make Apple-sized profits but they are strategic enough to sacrifice those profits to defend their ad cash cow.

Low prices are Google's weapon - as long as a tablet runs Android, Google most likely makes money from the person using it so if they could give Android table to everyone for free, they would. Apple and Microsoft don't have that option, they have to sell them at a profit.

<comment><USER3> I read this mostly as a fluffy piece urging Google to consider targeting the enterprise instead. That's a fine option, if Google had strong integrated business services already. I'm not sure that it does - not at the level of Microsoft, anyway. Consumer is where Google can play the game and where it has a strong foothold, and we've seen that strong consumer penetration gave Apple a strong entrance into the enterprise market (I see a lot of organisations adopting iPads).

I'm not so sure about its claims about Asian manufacturers likely to turn out market-winning low-priced devices, either - I've been considering picking up a made-in-China tablet for a while, and the prices aren't so much better than the Nexus 7's $200 (a dual-core would be $100 or more right now). And as you point out, Google cares about having tablets run Android, not about profiting from the hardware. What are all the Chinese manufacturers loading on their tablets? Android ICS, essentially without exception.

I do think having an official, well integrated keyboard would be very beneficial to the tablet's ecosystem. That's where the Surface wins - I can almost see it as a light laptop replacement. The writer is certainly correct in painting this as important.

<comment><USER4> Yes, the Surface hardware is intriguing, but the jury's still out on whether their OS will gain acceptance, or seen as a non-cohesive mishmash that won't run many of the popular apps.

</comment></comment></comment><comment><USER5> And there is why you don't take business strategy from random Forbes writers.

* The author took his wife's behaviour and generalized it to represent the entire marketplace. _I_ use the Kindle app on 2 different tablets in preference to my Kobo, and anecdotal evidence is just as relevant as his.

* He claims _the copy-catters will beat them both [on price]_. As has been previously discussed on HN, Google has priced the Nexus 7 pretty close to cost. No copy-catter is going to going to undercut that with similar features for a while yet.

* "Office is the Microsoft weapon for Surface" The iPad seems to be doing just fine by _destroying_ the Office monopoly in the enterprise.

* "Business apps from Microsoft's parters will be MS's secret weapon." How's that working out for Windows Phone 7?

It's pretty clear the author is a MS fanboy who hasn't accepted the fact that MS has to do a lot of work to remain relevant. An "Enterprise Strategy" is great, but the iPhone showed CIOs back in 2008 that all the strategy in the world is useless when your CEO decides they want an iPhone (or, now, and iPad).

</comment><comment> Tuna-Fish I think the author's biggest failing is that he assumes that just because Google is spending time designing tablets, Google wants to make money selling tablets. He could not be more wrong. The entire Android venture is a defensive play. Google is perfectly happy to pour tens of billions of dollars into Android without seeing any direct revenue from it.

The reason for this is that Google's real core business is still the search advertising. So long as people "google" stuff when they want to find something, Google's future is safe. The walled garden device model is a direct threat to it -- even if the manufacturers never directly block Google, if they make using Bing or whatever easier and more convenient, Google might lose their money press.

So Google makes sure that walled gardens don't win. That's really all they are in for. The Nexus 7 exists because IPad was soundly beating all tablets competitors. All the relevant IP in it has already been distributed to basically everyone who could possibly want it. Google wants it to be cloned.

</comment><comment><USER6> What a terrible article. If the chap writes the muppet history then that may be worth reading but this managed nothing tangable and is trying to make something out of what it is not. So many assumptions, so many parralels that have no corilation.

Only story here is that the chap got paid to write that, now that is a story!

</comment><comment><USER7> Worst historical analogy ever. The French invasion of Russia was a massive commitment of resources and therefore failure would be clearly catastrophic. The Nexus 7 is at the most an incremental step in a much larger campaign. More importantly, the goal is to encourage a vigorous and somewhat cohesive ecosystem rather than to become a leading electronics manufacturer.

The author also makes a number of odd statements like "Like Napoleon's obsession with the resources of Russia, Google continues to fall in love with the potential riches of the consumer market." WTF? Google has been almost entirely focused on reaching the consumer market since day one.

</comment><comment><USER8> I've always seen Google's "Nexus" line of products as essentially prototypes that Google releases into the market to light a fire under device manufacturers to raise the bar for the latest Android OS.

I would be surprised if Android isn't already nearly the dominant OS for enterprise mobile apps. A cheap, stable tablet is a big win for business, as the iPad is pretty expensive. So who says the Nexus 7 isn't a strategic move toward more of Android in the enterprise market?

</comment><comment><USER9> Its a sign of times that "leading" magazines publish such crappy articles. the author doesn't have a frigging clue about ad business models - I guess his objective is just to meet the word count.</comment>


An interactive demo on how declarative Lisp is - <AUTHOR> http://okertanov.github.com/2012/04/14/declarative-factorial

<comment><USER2> Interesting, however I'm not very convinced it's a good idea for a primer. That's a lot more confusing than it would be without the natural language macro hacks.</comment>


Global ambient air pollution map - <AUTHOR> http://maps.who.int/airpollution/ <comment><USER2> World Health Organization report: [http://apps.who.int/iris/bitstream/10665/250141/1/9789241511...](http://apps.who.int/iris/bitstream/10665/250141/1/9789241511353-eng.pdf?ua=1)</comment>


Creality Developing Belt-Driven Desktop 3D Printer - <AUTHOR> https://www.fabbaloo.com/blog/2020/8/25/creality-developing-belt-driven-desktop-3d-printer <comment><USER3> I really don't understand the appeal of this sort of machine. I have a pretty big (300x300x300mm) and very fast printer, and large prints are still annoyingly slow and expensive. I can't ever imagine FDM printing (especially with a small, filament-fed hotend) being an appropriate way to make "arbitrarily long" objects. Other people have scaled the platform I have up to 500mm and 700mm, and get great results on genuinely large objects too, not just on long things.

Furthermore, the volume production stuff is just silly. If I'm printing a bunch of small objects, I'd rather fill a build tray with them, and then swap it out every 8 hours when it's done. The belt release stuff really seems to have reliability issues. Or, just use an appropriate manufacturing technique for high volumes...

Maybe I'm just a curmudgeon with bad memories of belt build surfaces from a Thing-O-Matic.

<comment><USER4> As someone who is quite deep into this as hobby I have to agree. "endless" printing is a niche feature that would barely see any use. The reasons are:

1\. Just look around you: Where do you see bigger than 300mm^3 (around the maximum size of common FDM printers) plastic objects? Barely any. Larger single-piece objects (or parts of them) are made from metal, wood etc.

2\. To make things worse FDM parts are weaker than injection molded ones, your big parts will be very brittle.

3\. FDM printing is inherently an unreliable process. There are lots of moving parts (the simplest FDM printer needs 4 motors, lots of belts, idlers, gears etc) and very tight tolerances (e.g. the print needs to begin 0.08-0.12mm above the printing plate; the whole priting plate needs to be very level and parallell to the printhead.). This is achievable at surprisingly low cost today (an entry level Creality printer is <200$), but it needs constant maintenance - meaning you need to adjust something around every 20-50 print hours. (I guess industry grade machines are better, but Creality is aiming for the hobbyist market.). So in practice your "endless" print will likely go wrong after a day or so making it useless.

4\. If they dont go wrong slight misconfiguration or misalignment causes your prints to be ugly/faulty. And even a perfectly tuned FDM printer cannot reach the precision of an injection molded part. Just to get a picture heres a link that shows how many things can go wrong: [https://www.simplify3d.com/support/print-quality- troubleshoo...](https://www.simplify3d.com/support/print-quality- troubleshooting/)

I am starting to think that FDM based printing is a dead end in the history of 3D printing (mainly because of reason #3). Likely the future is resin - <USER2> simple LCD resin printer has 1 moving part. But they need to solve the issue that most resins are nasty, toxic materials that you dont want to have around in your home.

<comment><AUTHOR> I like resin but doesn't that limit your choices of materials? And isn't there a lot of post processing?

<comment><USER5> I print a lot of miniatures which require tons of supports, but the support process most people in my space use result in supports that are incredibly easy to remove - it got to a point for me where I enjoyed removing supports that I was printing too much. Sort of like when we'd put Elmer's glue on our hands just to pull it off after it dried back in school. :)

Post (or pre) support removal is an isopropyl or acetone (or other agent) bath to remove any liquid surface resin and then a final UV curing.

I use an Anycubic curing station so that definitely speeds things up. To process a full build plate from my EPAX X10 it takes upwards of five minutes of my time [in terms of attention] (plus six minutes in the alcohol bath and six minutes in the UV cure chamber, which are both unattended processes).

<comment><AUTHOR> Interesting. How much faster is the print time vs fdm?

<comment><USER4> It really depends. an LCD resin printer prints a single layer at once, but it prints much smaller layers than an FDM printer (resulting in better quality). So for something small like a minifigure FDM will be faster, but for something big (especially if it has lots of small features) resin is faster usually. And resin prints are always more detailed.

</comment></comment></comment></comment></comment></comment><comment><USER6> The article uses some confusing terminology. Almost all 3D printers use belts to drive at least one axis. Creality is just making their version of a niche style where the build plate is a conveyer belt instead.

<comment><USER7> Yeah, that ticked me off too. This is certainly not "belt driven" in the normal sense.

</comment></comment><comment><USER8> This is really interesting. In my opinion, Prusa is the best in class printer to purchase for a turnkey machine. If you want to scale up a printfarm. Add more Prusa's and some humans to tend them.

But there was never really a way to run the print farm lights out. As in queue up the job for 7 days. Then have humans show up at the end of the week and package ship orders.

If there was an OTS machine that could contend Prusa for production value per dollar. This looks to be it. I'll be buying one of these when they are out.

For the patent comment, I think Stratasys has a patent on it, but one of the claims is that the machine prints with orthogonal axes. Angle the print head and now its good? [https://www.stratasys.com/3d-printers/continuous- build-3d-pr...](https://www.stratasys.com/3d-printers/continuous- build-3d-printer)

<comment><USER9> I've played with belt systems similar to this.

It's great for high-volume small quick-to-print pieces. I would have loved to have used such a system when I was printing first-response medical protective gear early on during the pandemic; I needed high volume and the pieces were small.

It _sucks_ for large pieces that require good bed adhesion.

A bit of background: A common problem with certain materials, like PETG, is that the nozzle tends to weep. If that's the case, during a large print there may be a buildup of plastic that offsets the nozzle a small amount. At the top layers of the print, where leverage is the highest, if that offset on the nozzle makes contact with the print, it's probably game-over. The nozzle+offset will _probably_ knock the print off of the bed, destroying the part.

I experienced two problems with a belt-bed system like this.

For one, bed adhesion is generally lower, so events like described above are basically _never_ survived, whereas with a steel insert bed like a Prusa, the part stays bonded to the work surface, but the offset may cause damage to the top of the part, or the offset may contact it and be pushed aside, allowing a healthy print or a negligibly damaged print, rather than a total failure.

Secondly : if you print anything complex, requiring thin or small support structures or brims -- it's a good chance the brim or support material is going to stay on the belt for the ride til the next lap. The system I used had a brush that contacted the bed, but it wasn't enough. PETG brims would work their way back up to the printing area, and be printed on top of. In most cases, that's actually ok -- rarely is the bottom of a print important aesthetically -- but if the work surface is offset by the thickness of the brim, then it increases the likeliness that we'll experience the ooze/weep offset described above, given that there is less clearance now for the nozzle to stay away from it.

I think belt systems are the way forward, but I think they need to 1) offer better and more consistent bed adherence; the system I used had 2 or 3 slick spots that we avoided because things didn't like to stick, and 2) offer absolute rigidity -- the belt system I got to play with felt like it'd likely stretch over time and enough part removals.

<comment><USER8> Great points you brought up! Only have experience with the Prusa's and it's been great. I never operated the a belt bed printer.

It seems like another way to solve the problem is to stack hundreds of the steel sheets in a magazine behind an i3 styled machined. When the print is done, the Y axis goes all the way to front of the machine.

It will basically hit the steel sheet in a ramp and unload the sheet, through the front of the machine. (In a clean under actuated robotic style). Move the bed to the other extreme to reload a fresh plate. This would involve a machine with more Y axis range of motion.

If you're familiar with CNC machine tools, this would operate similar to a Brother Speedio Tool changer. Where the Z axis spindle motor actually indexes the tool changer, when Z axis is high enough to engage the tool changer.

Regardless, I'm excited to see how both style machines solve the next stage of lights out automation.

</comment></comment></comment><comment><USER10> No mention of involvment of realsexycyborg here? i'm not 100% sure of the story but she's quite involved in the new design

[https://twitter.com/RealSexyCyborg/status/130099753348578508...](https://twitter.com/RealSexyCyborg/status/1300997533485785088)

<comment><USER11> The Creality Ender 30 is based on the opensource White Knight 3D [0] printer by NAK3DDesigns [1] though so why would you give her most of the credit?

[0] [https://github.com/NAK3DDesigns/White- Knight](https://github.com/NAK3DDesigns/White-Knight)

[1] [https://twitter.com/nak3ddesigns?lang=de](https://twitter.com/nak3ddesigns?lang=de)

<comment><USER10> perhaps because he gives himself credit[0] ?

Or do you think industrializing a design is not valuable ?

[0] [https://twitter.com/NAK3DDesigns/status/1303470020450750472](https://twitter.com/NAK3DDesigns/status/1303470020450750472)

</comment></comment></comment><comment><USER12> It seems like an engineering mistake to have the nozzle canted in relation to the bed. Bed adhesion and first layer quality is necessarily going to be compromised. Additionally, the ability to achieve good surface finish on high aspect ratio and rectilinear parts is reduced (at least without introducing a material quantity penalty and previously-unnecessary support structures.)

Fight me.

</comment><comment><USER13> FDM 3D Printing has some exciting innovations including Belt-Driven Beds, Non- Planar, and 5-axis systems.

The quality of FDM is so high now and the price is so low. I really wanted to go through the Injection Mold route at one point, but cost is just too high. Average quote was $8,000 for the mold (small parts too) and each shot was ~$1.

Prints on FDM is already $0.75. It does take 1.5 hours to print the part though, but there's no lead time and you are able to make incremental changes to the part design.

FDM 3D printing vs Injection Mold feels like Hybrid Web App vs. Native App Development. The FDM prints have that uncanny valley feel where it's 80-95% there, but just not quite perfect (eg. layer lines, not high enough resolution).

</comment><comment><USER14> Full marks for thinking out of the box.

It will be interesting to watch. The claim "infinitely long" is rubbish of course, you have to balance the rest of the object, so maybe a later add-on for a 'catch ramp' of various lengths.

I'm curious how they hope to deal with alternative materials (PLA can do this but good luck trying to get that to work with TGLASE or P90 or HDPE. Also thinks like ABS that shrink and so a heated base is essential would be challenging on a belt.

No matter what, if they get it into production it will advance the understanding of the state of the art.

<comment><USER15> infinitely long also wouldn't be possible since once the belt travels half its length, the object would be fully released from it

</comment></comment><comment><USER16> Is there a slicer that can create g code to print in this angular fashion?

(So diy'ers could make one)?

I wonder what could be used for the belt? This structure actually looks easier to build and seems more sturdy.

<comment><USER17> It's not a slicer problem but a firmware one. The slicer tells the printer something like "G1 X30 Y10 E5" and it's up to the printer firmware to figure out how to move the X axis 30mm, the Y axis 10mm while extruding 5mm of filament. Given the fact that the X kinematic here are identical to a bed slinger, just with no end stops, Y and Z use kinematic similar to a CoreXY setup, this shouldn't take much at all. I guess this would be CoreYZ? Also, this is Creality which uses Marlin for their firmware. Chances are we will see this in Marlin in no time.

As far as ease of build, I suspect that's not quite the case. The main thing I would worry about is the belt flexing under the print head. If you think about it, the nozzle only moves across the bed in a straight line, left to right. To print an object with a Y dimension you need to move the belt forward and back and depending on how you set up the line on which things are printed if there is flex there you won't get bed adhesion. You could use the treadmill belt material coated with something that can be printed on. Or whatever belt sander belts are made of before the abrasive is glued on.

<comment><USER18> That doesn't sound right; the slicer outputs paths, and the firmware isn't going translate flat paths into diagonal paths.

The head can not travel in a plane parallel to the base plate, so it can't use paths calculated for a regular flat primer.

</comment></comment></comment><comment><USER19> Meta: please, mods, edit the title to remove the chevron and domain. Thanks.

</comment><comment><USER16> Any idea how much this would cost? Ball park? I never bought a printer.

<comment><USER20> I would guess between $600-$800 USD. Keep in mind Creality printers are kits so you do have to assemble them yourself. Not too difficult, but definitely a learning curve on your first printer. YouTube and Reddit help a lot, though.

</comment></comment><comment><USER21> Isn't this patented by Stratasys?

<comment><USER22> BlackBelt 3D claims a pending patent, but a quick search didn't find it.

There's a few of these. [1] Creality's unit, with the triangular support structure, looks more solid than the others.

This really reflects progress in printing materials. Printing at an angle probably would not have worked with the filaments of a decade ago. Remember the need for heated build plates, and a warmed environment around the printer?

[1] [https://youtu.be/E_RvnqVHbnA](https://youtu.be/E_RvnqVHbnA)

<comment><USER23> Patent would be invalidated by prior art.</comment></comment></comment>


Is Jailbreaking a Real Security Threat? - <AUTHOR> http://zdziarski.com/papers/jailbreaksecurity.html

<comment><USER2> Firstly, I'm not against hacking in the strictest sense of the word i.e. tinkering to find out how something works.

The original iPhone did not have an SDK. So the motivation to jailbreak in order to tinker was somewhat justified. However with the release of the SDK and with so many apps out there at low prices, is there really still a need to jailbreak?

An iPhone developer can choose to either give his app away or sell it. Installing jailbreaking software annuls that choice effectively returning control to the consumer. Unfortunately a lot of people jailbreak to pirate apps and not to tinker.

As for the rest of your rant about Apple's greed. Consider that an iPhone developer chooses to make his app available for free. Apple makes no money out of it, yet has to supply hosting, bandwidth and other administrative costs. If free speech/beer is valued that highly to the developer, then write a web app since all half-way decent smartphones have browsers. No need to even pay the bozo tax aka iPhone developer fee.

When I'm on someone else's property, I behave according to the house rules. I don't shit on the lawn just because I disagree with the owner's choice of invited guests. Most people usually register their displeasure by just leaving the party.</comment>


Show HN: Rake Build Script for Zurb Foundation 4 Compass / Sass Projects - <AUTHOR> https://github.com/manofstone/build-zurb-foundation-4

<comment><AUTHOR> Author here, would really like to get some feedback about how I can make this better for the zurb foundation / ruby community. If you have any resources about creating Rake build scripts for static site resources (outside of Asset Pipeline / Sprockets) I would love to hear about them.</comment>


Ask HN: Most accurate way to find a users location? - <AUTHOR>

Note: I'm the least technical person on our team.
We are building omnom.com and use Maxmind GeoIP to populate our city dropdown with nearby cities (click on city tab of homepage > view dropdown)
It's pretty inaccurate. Our options are: Upgrade to paid to improve accuracy, use different IP location, or find some other type of user experience for people that want to browse/not put in their address. I would love any feedback/help. Thanks <comment><USER2> I've done this hunt too. If anything less than the vast majority of your site's visitors are mobile, then HTML5 geolocation isn't going to suit your needs (at least it won't for another 5 years.)

Upgrading to MaxMind's paid database is really the best option, assuming you can afford it. If you can't afford it and you can't cope with the inaccuracies of the current solution, you might be able to go with a hybrid-solution that'd incorporate Google Maps ([http://code.google.com/apis/maps/documentation/javascript/ba...](http://code.google.com/apis/maps/documentation/javascript/basics.html#DetectingUserLocation))

<comment><USER3> Maxmind has a pay as you go option as well, which I am using for my site, and it is extremely affordable. You are also allowed to cache their data, which I do and saves a ton on cost. Also something I haven't done yet, in your cached data, you can manually change IP address to Location mappings in case there are any locations you want to manually specify.

This is the service I use: <http://www.maxmind.com/app/web_services_omni> and if you ask they will probably give you a trial account.

I use it here: <http://localbeer.me>

</comment></comment><comment><USER4> At best, IP Geolocation will get you to a nearby city; it won't get you down to the neighborhood/block level reliably.

Try HTML5 geolocation. The user has to give permission (through the browser), and its not universally supported, but, the results tend to be pretty solid. [http://html5doctor.com/finding-your-position-with- geolocatio...](http://html5doctor.com/finding-your-position-with-geolocation/)

</comment><comment><USER5> Try <http://www.datasciencetoolkit.org/></comment>


My poloniex account hacked and the hacked took away my fortune what can be done? - <AUTHOR> He played game strongly. He didnt withdraw as email for confirmation comes to my gmail.
He bought costly coins which no one buys and then put sell order for pennies and put purchase order from his other accounts :(
What can be done? Poloniex issue id: 269254 they never reply to your query in time.
Lesson learnt do enable 2FA in poloniex. Do not assume if your email has 2FA poloniex doesnt need. <comment><USER2> I had the same problem. It is a nightmare. Since I recognized it had happened I am frozen. The amount was too big to keep it on an exchange.

<comment><USER3> same happened to me early hours of this morning, did you hear from them at all?

</comment></comment><comment><USER3> same happened to me early hours of this morning, did you hear from them at all?

reply

same happened to me early hours of this morning, did you hear from them at all?

reply</comment>


Ask HN: What is your professional opinion of Wordpress? - <AUTHOR> My last job was at a hosting company where all I did was help fix Wordpress issues. I'm trying to learn how HN views the strengths and weaknesses of the platform. Also, if you know of any resources to know Wordpress at a very in depth level. I know the fundamentals of setup, picking quality themes/plugins, customizing pages/databases, and setting up hosting but not much beyond that. <comment><USER2> The best part of WordPress is that it's been around long enough to have a very long tail of documentation and written experience. It also has a wonderful online community. Check out Advanced WordPress on Facebook - [https://www.facebook.com/groups/advancedwp/](https://www.facebook.com/groups/advancedwp/) \- for just one expample. Start building sites and asking questions when you need help.

</comment><comment><USER3> Amazon has plenty of books about Wordpress, read up.</comment>


Copyright Infringement? LibreBoard – Trello - <AUTHOR> https://github.com/libreboard/libreboard/issues/92

<comment><USER2> See also [https://news.ycombinator.com/item?id=8936701](https://news.ycombinator.com/item?id=8936701) (back when it was first presented and this happened)

Seems like they were kind of surprised by the fact that people actually looked at their toy as a serious thing. If you just play with something yourself it isn't an issue if you use others' assets/code or not, but as soon as you publish it that doesn't fly anymore, and fixing that didn't happen when they made that step.</comment>


CircuitLab (YC W13) Has 70K Users/Month For Its Electronics Design Tool - <AUTHOR> http://techcrunch.com/2013/03/18/yc-backed-circuitlab-has-70k-monthly-users-for-its-browser-based-electronics-design-and-simulation-tool/ <comment><USER2> You might be aiming at users who are too entry level for this idea, but given higher level users, you have an obvious monetization path of "export to a Digikey / Jameco / Mouser / "localized" shopping list.". If its already there I didn't see it. Not just dump a list, but the specific part numbers at those distributors. Heck, export and make an a printed circuit board while you're at it...

Going the other direction for monetization somebody should make a startup for all those kit mfgrs so Ramsey and all the QRP ham radio guys etc etc can automatically have their kits online ready to mess with and modify. Like your connection to stack exchange but somewhat higher level. Or magazines and their article projects. QST/QEX and other hobbiest mags.

A third direction might be with the mfgrs. Rather than a semi-generic IRF530 fet you could get Vishay or ON or International or the usual suspects to have their "specific" '530 device. Even if the difference between mfgrs is mostly just rounding errors...

<comment><USER3> A thousand times this. The few times I've gone about building hobby circuits post-college, the most annoying part is buying the parts.

<comment><USER4> Great to hear more confirmation from you both that this is a serious pain point! (Not just for hobbyists, either.)

<comment><USER5> Altium Designer does a pretty awesome job at this, pulls all pricing data and stock levels from Digi-Key, Mouser, etc right into the editor.

</comment></comment></comment></comment><comment><USER6> I've recently been using a bit of circuitlab for throwing together diagrams for lab reports. I've found it to be much faster and much less of a hassle than using pspice.

I've had very few issues using it over the past few months, but since the founders are probably eyeballing this thread I'll lay out some of my suggestions here.

-If I try to export an unsaved circuit, I get a prompt pestering me to save my circuit before exporting it. This happens nearly every time for me since almost all of my circuits are quick no-nonsense stuff that I spend 30 seconds on. I suggest that when I try to export an unsaved circuit, it gets automatically saved to my folder as _exportedCircuit[0/1/2/3/..]. At the very least make the export button bring up the save prompt if I press it with an unsaved circuit.

-The components are a bit of a hassle to navigate. To reach any one component, I have to do loads of scrolling through that menu on the side. Often I'm looking for a component, get halfway to the bottom, and wonder if I had missed it. It would probably be better to implement the component box with the components of each category nested under a category button.

-Virtually all of my exported circuits are going into a word document. The first time I did an export I had to measure how wide my word document was in pixels so I could get a full resolution image on it without going over the pagelimits. I suggest implementing an alternate export size field for exporting the image in terms of width/height in inches of a standard word document.

</comment><comment><USER7> I've been using the product off and on for the past few months and overall have had a very positive experience. However, I think it would benefit from a more mature range of simulation capabilities and component inventory.

It would be great if the product incorporated the real-time parameter variations you get from the falstad simulator [1] in order to get a better intuition for what's going on. It would also help if the simulation computation time was greatly reduced.

It's an annoyance to have to drop a generic component (e.g., NPN transistor) and not see my part of choice in the options and have to manually go dig through my papers and find the datasheet and look up the parameters. It just distracts from what I'm try to do- save myself time.

Overall, I think that the product needs to target the non-professional segment that has long surpassed beginner status. Essentially, experienced hobbyists that are looking for an online alternative to the more expensive professional solutions. For beginners, they can use the Mattel styled product Fritzing [2] on the desktop to mock out breadboards and circuit diagrams.

[1] <http://www.falstad.com/circuit/>

[2] <http://www.fritzing.org/>

<comment><USER4> Thanks! Deep component library and expanded simulation capabilities are our top requests and are definitely where we're going next.

</comment></comment><comment><USER8> I think I remember seeing this quite a while back... and having a very positive reaction. It's obviously much more intuitive than Multisim (and much more prettier-looking, much more 'accessible'), but it's obviously not as powerful as Multisim (at least as of yet). So, as far as I see, it is a match made in heaven for high-school level 'intro to circuits' classes. I wish you guys the best, you've made a fabulous webapp. :)

<comment><USER4> Thanks! Most of the ex-Multisim "converts" we've talked to are actually at the university level. But yes, very happy to make it more accessible to younger students as well. I certainly started playing with electronics as a teen and I suspect that's true for many here on HN.

</comment></comment><comment><USER9> Being in my second year of Electrical (and Biomedical) Engineering at McMaster University, I have to say I love CircuitLab.

My advice would be: Buy all the EE textbooks (they're expensive, I know...) and make sure that all the problems in the textbooks can be done with CircuitLab. Make it really easy for PSPICE instructions to be converted to CircuitLab. The education market is a huge one for you and I think you can really win out over PSPICE/MultiSim here.

You've already done a great job with PSPICE compatibility in terms of terminology. And I love how easy it is to modify MOSFET/BJT models. I'd prefer a bit more customization of the simulation plots, though.

</comment><comment><USER10> The first thing that came into my mind as I saw the demonstration video was Bret Victor's instant feedback theme (<http://vimeo.com/36579366>). It would be so cool to change the component parameters interactively and see the changes in the simulated graphs.

Having an "unsaved changes" warning in a web app feels weird since we have Google Docs.

<comment><USER4> Thanks for all the feedback. We've seen the video and our client-side simulation engine lets us think about building something like that in a future version!

It turns out that many users are using CircuitLab to do a quick test or a quick change (i.e. what if 0.1uF becomes 0.22uF), and unlike a conventional text document, it isn't 100% obvious that the newest version is always the one they want to persist. (Imagine if git/hg auto-committed your code every time you typed a character!) In some scenarios it's actually more like interacting with a REPL. This is definitely a UX area we'll look to get right going forward!

<comment><USER11> There are two separate user desires that you need to separate:

1\. If [browser/server/electric utility/network] crashes I should not lose work.

2\. I want to explore a few quick changes and then revert back to a known good point.

The technical solution is to do continuous saving but let the user mark certain spots in the revision tree as more important. Please note that you will be storing all revisions and the structure will most definitely be a tree (due to undo/redo/forking whatnot) Marking could be as easy as hitting save or creating a named revision.

From an UX standpoint continuous saves are best effort while explicitly hitting save should freeze the system and only return an OK once the data has really been persisted to disk.

My $.2, I've worked on Google Docs and Tinkercad.. :-)

<comment><USER4> Hi Kai, Tinkercad is awesome -- been following it for a while! Agree about the value of the continuous saves, and this kind of functionality is certainly on our roadmap. Thanks!

</comment></comment></comment></comment><comment><USER12> This looks pretty similar to when I tried it a few months ago. I used it once, and never used it again (not saying because it's bad or anything, but I like my tried and true Eagle to do circuit board layout, and I generally don't do analog so I don't really need simulation).

I think some things are really nice, but some things are obviously lacking.

It's very easy to use. This is great, it's not intimidating (at least for me). I'd like to see copy pasting elements not paste them directly over the other element, and I'd like it to paste it into 'my hand' where I can move it somewhere else right away.

Add some color. Try it. This interface is very, very bland. What is there, three colors on the screen? If you're shooting for beginners, adding colors will make a world of a difference. Color the wires. Things connected to V+ are red, things to GND are black. Signals (wires connected to transistors, etc) are yellow, or whatever. Let me pick the color of LEDs (start them blue or something). Let me tell you what color wires I have on hand, and you make the 'best' decision (or most standard) for laying my circuit out. Colors are one of the best way of rapidly signalling information, use it to your advantage.

Automatically connect close components. Say I have 1-2 grid steps in between components, just connect them for me. I wish I could tell you how many times I've hooked a transistor up to a resistor up to an LED in a schematic program. Save some time and just connect it. Luckily, signals generally go left to right, and power goes up and down. This could work nicely.

I really, really like how I can hop on and try it right away without signing up for anything. I'll never try Upverter (someone else mentioned it) because I have to sign up before I can even use the damn thing. Maybe it's awesome, maybe it's not, I'll never know. I do know about your product though - and the next time you make changes I'll know I can try it out without being hassled. Fantastic decision.

I'm not sure who exactly you guys are targeting - but if you'd like to include beginners, it would be a nice touch to be able to double click components (this operation currently just selects and deselects a component) and get a 'summary' of what the part does. Have a real world picture of them, or embed a wikipedia page, or open a new tab to the wikipedia page, something to more strongly couple the learning aspects to the simulation.

It would be nice if I could open up a series of schematics, and poke around with them. The simulation feature is your best learning tool, but if I can't design something yet, I can't really simulate anything. Giving me something like an LED connected to a switch, an 555 LED flasher, and an LED connected to a PWM controlled off a pot. Or something. Bonus points if you set up these basic circuits, and record videos of them at all the stages (for all input values), letting users see what they're doing (granted you could just compile a video from frames that you have from running a sweep with the circuit).

<comment><USER4> Thanks for the great feedback. We definitely appreciate how enormous the problem is and that we're just at the beginning! (Without giving away too much, we're already working on some of the things you mentioned.)

</comment></comment><comment><USER13> Woooo hoo! Congratulations Mike & Humberto!

<comment><USER4> Thanks Brian!

</comment></comment><comment><USER14> Are you guys working with Upverter on potential ways to collaborate? Just wondering. Looks like an awesome project! Good luck!

<comment><USER4> Thanks! We've met their team, and they're a great group.</comment></comment>


Ask HN: Why is Android moving to AOT Java compilation? - <AUTHOR>

http://anandtech.com/show/8231/a-closer-look-at-android-runtime-art-in-android-l
I'm a bit surprised to see Android move to AOT compilation, together with large claimed performance benefits. As far as I know, aside from ART, all state of the art Java Runtimes are using JIT. In theory, JIT should have the advantage of having live profile data, the ability to speculatively do optimization and back off when they're wrong, etc...
The article list a bunch of benefits, but they don't really seem to stand up to scrutiny. Overhead from repeatedly having to JIT the code? Cache it - also removing the battery life argument. AoT having the advantage of seeing all the code and do global optimizations? It's just the opposite!
I could see some advantage of AoT for first-startup, but that isn't even claimed as an advantage, because the AoT happens at install, not at compilation/packaging time.
It's even stranger as modern Android phones have 4 to even 8 cores. That leaves plenty of horsepower to do the JITing in the background and be even faster.
Now, I can see that ART is faster simply because it's a better, second iteration on Dalvik (which wasn't great). Dalvik was 2-3 times slower than standard JITs. ART seems to make up this difference, but that still leaves the question: why did Google choose to go the AoT route instead of JIT? <comment><USER2> Startup time. JIT doesn't kick into action until after the app has started up and ran through some hot code paths. Up until that time things are interpreted and thus slower.

Secondly there are limits to how much you can optimize at run time. For servers there is more leeway in terms of available memory and CPU power but on mobile you can only optimize so much without slowing things down with optimization and jit code generation overhead.

JIT generated code has to be generated every time the app runs. Besides the pages used to store the JIT code are process private - I.e. no sharing.

Compared to all of this - AOT can afford to optimize more, it only has to do it once, the framework code can be spit out to common shared files on the disk this enabling sharing of those pages and reducing memory consumption. This gives you speed, battery and memory benefits over JIT.

<comment><AUTHOR> _Up until that time things are interpreted and thus slower._

That's true - but not specific to mobile.

 _For servers there is more leeway in terms of available memory and CPU power but on mobile you can only optimize so much without slowing things down with optimization and jit code generation overhead._

Which makes me wonder why it's going into new versions of Android (running on 4 to 8 core devices, i.e. having plenty of free horsepower). If anything this is becoming less of an issue.

 _JIT generated code has to be generated every time the app runs._

False.

The memory savings argument might be something - particularly with heavy use of system libraries. Android phones usually have relatively memory compared to their other resources.

<comment><USER2> >>JIT generated code has to be generated every time the app runs.

> False.

How so? Do you know of production class JITs that cache generated native code and reuse it every time the process is re-executed?

<comment><USER3> HotSpot? [http://stackoverflow.com/questions/1992486/why-doesnt-the- jv...](http://stackoverflow.com/questions/1992486/why-doesnt-the-jvm-cache- jit-compiled-code)

<comment><USER2> Nope. I know for sure hotspot doesn't do it - neither for desktop nor for server. The "Oracle JIT" refers to the JIT that Oracle uses for Java code that executes inside of the Oracle database. Completely different environment and usage model.

Read the first comment in your link to get a sense of why it isn't practical to do persistent code caching for a dynamic language like Java.

</comment></comment></comment></comment></comment><comment><USER4> If you cache everything, you're just doing AoT compilation.

But in general, I would say that the performance advantages of JIT have never really materialized outside of a few specific types of code. In theory, there should be room for them to appear, but in theory, we're all running Itanium chips. In practice, we haven't been able to write software to take advantage of those theoretical possibilities very well.

Look at it this way -- there are a lot of really smart people working at Google on Android, and despite having a completely working JIT environment and centuries of man-effort to devote to it, they went with a complete rewrite of the runtime in order to gain speed. They wouldn't have done that if there were easier paths to efficiency.

<comment><AUTHOR> _If you cache everything, you 're just doing AoT compilation._

Not at all. That's a false dichotomy. You can restore the past JIT-ed code from the cache and do new profile directed optimizations. Java JITs already do this, just not (AFAIK!) HotSpot.

 _there are a lot of really smart people working at Google on Android_

...and yet their previous runtime was 3 times slower than Sun's one, requiring a full rewrite. Sorry, that's just an appeal to authority, not an argument.

<comment><USER4> "You can restore the past JIT-ed code from the cache and do new profile directed optimizations."

Sure, but now you're paying for the compilation/runtime analysis stage more than once. If the JIT compiler is actively doing any profiling of your code, that's time and watts being spent not running the program the user wanted you to run. In order for it to be a net gain, you have to improve the efficiency of the user's program enough through JIT to pay for this repeated cost of doing the analysis however often you do it.

You can profile more intensively and more often, thus improving the generated code, but now you need to improve it a lot. Or you can profile lightly or infrequently, but now you have way less information with which to improve it.

In practice, it seems to be very hard to do significantly better than just running it through a good compiler once.

<comment><AUTHOR> _In practice, it seems to be very hard to do significantly better than just running it through a good compiler once._

Why aren't the other Java runtimes doing it, then?

<comment><USER4> I can only guess, but I'd say it's a combination of factors.

First, the JIT on my quad-core i7 can be pretty intense. I'm more willing to pay the overhead than I am on a device that has a tiny battery and gets hot in my pocket. So the JIT on my desktop is going to be better than the one on my phone.

Second, Java is mostly a server language these days. The types of programs that run on servers are going to be more amenable to profile-guided optimizations than UI heavy event handling code that constitutes a large part of phone apps.

And on desktops and servers, it just doesn't matter that much. Particularly on a server, startup time is pretty much irrelevant. So the downsides to JITs are minimized due to the nature of the workload.

</comment></comment></comment></comment></comment><comment><USER5> > modern Android phones have 4 to even 8 cores, That leaves plenty of > horsepower to do the JITing in the background

Android can't really look at the world like that, the platform is being used in wearables through to what will be console class devices.

Android must be able to work in the low-end, take project Svelte for example, as being important to get Android (back) to being usuable in 512MB devices.

Also typically most effective power management strategies run to idle then off, rather than keep power consumers alive at some nominal frequency.

> Overhead from repeatedly having to JIT the code? Cache it

Caching in memory is a limitation because of basic memory constraints, and caching to persistent storage (swap) is not a great option because of the relative speed of mobile storage and to a certain extent wear levelling effects on flash may also be a concern.

I argue that what gets lost in the fog when talking about JITs and virtual machines vs static / AOT based solutions is that VMs can be very performant when you can ignore startup time and when there is a single instance of a VM that you have to manage on a system.

Take an Android device and look at the number of activities resident at any one time, you'll have 10 maybe 20 plus activities present, each of which is an instance of a virtual machine spawned from Zygote. This makes memory footprint of the VM critical, because the penalty for restarting Activities is often pretty high.

</comment><comment><USER6> Because making your users wait for your code to compile over and over again on their device is not what you want your users doing.

.Net has the same issue and MS also went this route for Windows phone and it's now making its way to the desktop.

If it can be done at build time it should, I think everyone is realizing that on many fronts. Long startup times and battery power being consumed by a jit is a worse users experience.

<comment><AUTHOR> But why not just cache the JITed code? There's third party JIT runtimes that do it (Excelsior JET) and it's planned in the official Java 8 runtime.

Caching first-run still gives you the ability to do more/new profiled-based optimization later.

<comment><USER6> If you cache you lose most of the benefits of a jit, might as well AOT one time for everyone.

<comment><USER7> I'm not sure I understand how.

You've gone through the JIT process of live profiling, hot spot detection, compiled down to native code etc. etc., then saved it along the way so that next launch you can start fast with everything already optimised (but also in a position to continue to learn and improve should the opportunity arrive.)

Your first run or two will be slower, beyond that you should be as fast as your code will go.

<comment><USER4> What magical extra CPU, memory, cache, and battery have you introduced into that third run to handle the process of "continuing to learn and improve should the opportunity arise"? Because if you're using the same one that's running the user's program, then you won't be running as fast as the code can go.

You have to pay for profile guided optimization. That optimizer is another program running on your CPU. It needs memory, time slices, access to secondary storage, etc. It's worth it _only_ if the user code can be improved so much that the total of the two is smaller than what you would have gotten by just compiling it once. And that's not easy to do for general purpose computation.

</comment></comment></comment></comment></comment><comment><USER8> Apart from technical reasons, there might be political or legal ones. One would be to bring the platform further away from Oracle's Java. Standard java uses the JVM, Android uses the Dalvik VM. While technically quite different, one could argue that in both cases Java is compiled to bytecode, and thus Android would be ripping of Java. ART would mean moving to machine code and thus a step away from the VM paradigm. However, I don't think this is a compelling reason, since the disputes have always been around the Java API and parts of the source, and not about the architecture.

Another (more paranoid) idea is that ART would nip stuff like Cydia Substrate in the bud. Substrate is basically a framework to hook arbitrary functions in apps or in the OS. For that, it depends on rewriting Dalvik bytecodes. If Google wants to lock the platform down to disallow stuff (bypassing DRM, turning off the camera sound, installing facial-recognition software on Glass, etc.) it would make sense to stop that kind of tool.

<comment><USER9> There are certified JVMs with AOT compilers available.

</comment></comment><comment><USER10> Again and again Apple's much criticized design choices turn out to be the right ones. In a resource constrained environment, AOT compilation and reference counting get you to a fairly high level of performance and good levels of abstraction with enough simplification for the programmer's task, but without taking too much away from UX in the form of lag.

Mobile is always going to be resource constrained for the same reason highways are always busy at rush hour. Such resources are too valuable to stay unused for long.

(Dalvik will never go to ref counting, but the design trade offs in its GC will reflect the same goals.)

<comment><USER11> You're comparing apples and oranges, Apple had the privilege of choosing its own hardware and programming language.

For android they went for java because of popularity, and everyone can use it on their own hardware.

So you have a java based language running on ARM, x86 and MIPS, what would you choose? A proven approach like JIT VM or AOT?

<comment><USER10> _> You're comparing apples and oranges, Apple had the privilege of choosing its own hardware and programming language._

Google and Apple both used already existing languages and adapted existing kernels. If you're saying that Apple didn't use an existing language or that Google didn't have the option of being more restrictive with hardware, then you are wrong on both counts. Google made choices which turned out to be worse for users over a certain timeframe. They were more attractive to vendors and manufacturers, however.

 _> For android they went for java because of popularity, and everyone can use it on their own hardware._

Google was optimizing for programer popularity, not user experience.

 _> So you have a java based language running on ARM, x86 and MIPS, what would you choose? A proven approach like JIT VM or AOT?_

If you're going to go with what's more proven with constrained resources, then you'd go AOT. If you're trying to optimize for UX and lag, but high level enough for rapid development, then AOT with reference counting GC.

<comment><USER11> I didn't say that, I said that both went for what was the optimal choice at the time.

Why Apple didn't go for Swift from the start? Because Objective-C was used in NeXT and then OSX and so on.. when the time was right ans Swift was mature it has been introduced.

The same with JIT VM, that, again, are then norm for Java bytecode.

Also Google could not be restrictive on the hardware, since they are not manufacturers and the OS is open source. They restrict to ARM CPUs only? Fine, Intel forks it and ports to x86 anyway.

Smart guys work in both companies and they evaluate pro and cons of every approach anyway.

</comment></comment></comment></comment><comment><USER12> Power is a bigger constraint on mobile devices than raw speed.

<comment><AUTHOR> What advantage does AoT have over JIT in terms of power? Recompiling is a non- issue, if you can cache AoT code you can cache JIT code.

Not to mention, faster code uses less battery.

<comment><USER6> Recompiling is an issue on large code bases, that's the problem, power is secondary, slow app startup is primary in my experience.

If you cache jit code it loses it live data benefit for the most part, might as well AOT on your build server instead.

<comment><AUTHOR> _If you cache jit code it loses it live data benefit for the most part_

As pointed out elsewhere: that's just not true.

</comment></comment></comment></comment><comment><USER13> IMO, more static code means even more predictability in terms of object placement in memory, thus allowing much more aggresive memory optimization : less fragmentation, efficient pagination etc... It means also that you have static code and GC interacting with it, it's pretty new, isn't it ?

<comment><USER14> Not really, these are orthogonal concerns. One could just as easily write an abusive unpredictable memory allocator in Go (native, GC) as in Java (bytecode, GC) or C (native, no GC).

</comment></comment><comment><USER15> Maybe they're not really moving away from JIT but just Dalvik. After they have the new runtime running well as AOT-compiled, they can move some of the optimizations into a tracer or other profiler, in a hybrid approach.

</comment><comment><USER15> Maybe it helps with latency? When a user presses a button, you don't want to have to compile some code before you can show them the result.

<comment><AUTHOR> That's not really an advantage of AoT over JIT+interpreter, is it? AoT requires compiling at first run, the JIT can just use the interpreter (and preferably compile in the background).

<comment><USER16> Wouldn't the background JIT thread possibly cause some of Android's notorious stuttering in the UI?

Let's be honest, today's smartphones are more powerful than desktops of only a 3-5 years ago for most things, have as much RAM, decent GPUs and as many cores and near enough as much storage. It's actually pretty miraculous what's been crammed into these tiny mobile computers. When you remove the battery out of one it's pretty astonishing how much computing you can fit in a few ounces.

<comment><AUTHOR> _Wouldn 't the background JIT thread possibly cause some of Android's notorious stuttering in the UI?_

No? Why _would_ it? Unless it's a single-core device with bad scheduling and prioritization, that makes no sense.

<comment><USER6> Because that interpreter that's running while your code is being compiled is not slower than the jitted code right?

</comment></comment></comment></comment></comment><comment><USER17> This is a question for stackoverflow, not HN. Also, just use google.

<comment><USER12> Fairly sure SO would close the question as unsuitable, FWIW.

<comment><USER18> Closed as primarily opinion-based.</comment></comment></comment>


How to Start Living Out of This World - <AUTHOR> https://journal.thriveglobal.com/how-to-start-living-out-of-this-world-e66ae853c105 <comment><USER2> This is meaningless.</comment>


What Are Daring examples of guerilla marketing? - <AUTHOR> https://capitalandgrowth.org/questions/1019/what-are-some-of-the-most-daring-examples-of-gueri.html?src=hn-3-11 <comment><USER2> Would rather see gorilla marketing.</comment>


Facebook Yoga Teacher Fired For Banning Phones in Class - <AUTHOR> http://mashable.com/2012/07/09/facebook-yoga-teacher-allegedy-fired-over-banning-phones-in-class/ <comment><USER2> This is non-news. Company politics.

</comment><comment><USER3> (This is kinda irrelevant and I don't think it has anything to do with Facebook – but what a stupid policy. It won't work. You cannot always say yes, if only because saying yes to one person may be mutually exclusive with saying yes to another person. All you can ever do is try to say yes to as many people as possible, never everyone.

Why are phones banned? Because one person can annoy the whole class with them. Banning phones in this case means creating an undisturbed Yoga class, i.e. saying yes to everyone who wants to be able to concentrate on Yoga and nothing else. I don't think it's unreasonable to think that's the majority in a Yoga class.)

<comment><USER4> A normal yoga class, I agree. I get the impression this is an employer sponsored class that takes place during the work day. Lots of job related things can pop up, and to assume that cell phone use in class was trivial is an odd assumption for the instructor to take, IMO.

<comment><USER5> As I read it I felt that if the yoga student could not spare 30min without connectivity, then perhaps the class was not a suitable fit in his schedule. Perhaps such a student is not ready for yoga or other meditative practices at all.</comment></comment></comment>


Swiss Startup Innolith Claims 1000 Wh/Kg Battery Breakthrough - <AUTHOR> https://cleantechnica.com/2019/04/04/swiss-startup-innolith-claims-1000-wh-kg-battery-breakthrough/ <comment><USER2> I have questions:

"We take the organic materials out and replace them with inorganic or basically salt-like materials, and that does two things for you. One is it gets rid of your fire risk,"

Isn't lithium the flammable bit? Am I missing something super important/obvious here?

"Greenshields says full production is probably 3 to 5 years away."

But surely they could provide a large demonstration battery?

Seriously, I'm tired of "revolutionary battery solves all the problems" articles without an actual tech demonstration verified by the reporter and a competent third party. These nonsense articles need to stop being published on HN.

<comment><USER3> > But surely they could provide a large demonstration battery?

They have:

"Pie in the sky? Heard it all before? Perhaps. The part that separates Innolith from all the others who claim to have invented the latest and greatest next new thing in battery storage technology is that is[sic] _already has one of its batteries installed and operating_ [in Hagerstown, Maryland]"

<comment><USER4> So they are basically in Real World testing already?

Out of all the battery breakthrough news I read, I think this is the first time any were actually being put into use.</comment></comment></comment>


Testflight acquired by Burstly - <AUTHOR> http://pandodaily.com/2012/03/05/burstly-testlfight-live/

<comment><USER2> Apprehensive, I absolutely love testflight. I've used it in every app I've worked on and I think they are an essential part of beta testing apps on iOS. I was looking forwards to using TestFlight live, and have it ready in apps in the store now.

I'm worried that this will dilute testflight, I would've much rather that it becomes a pay for product than be part of an ad network. It's not like they've got much competition, Flurry's analytics are difficult to use, Google Analytics is a hack -which is ok- but it doesn't work offline last time I checked.</comment>


Russian President Medvedev Denounces Cyber Attack - <AUTHOR> http://www.bbc.co.uk/news/world-europe-13011540

<comment><USER2> Our president is no more cases.</comment>


Show HN: A playbook for getting started with Node.js - <AUTHOR> https://github.com/HiFaraz/node-playbook <comment><AUTHOR> Hi guys!

I'm the creator of the Node.js Playbook. I'm looking for feedback and help into fleshing this out further.

I've wasted a lot of time researching basic things and trying to choose between popular yet nearly identical packages.

I'm putting all those things into a playbook that focuses on getting you started. It's not a be all and end all, it purely focuses on getting you started with a basic stack of choices that suit most applications.</comment>


Racetrack Memory -- 100,000 Times Faster Than Today's -- May Arrive in 5-7 Years - <AUTHOR> http://www.itworld.com/hardware/127654/racetrack-memory-computer-memory-thats-100000-times-faster-than-todays-may-arrive-5- <comment><USER2> "100,000 times faster than today's" ... hard drives. Not RAM. Or Flash.

Plus, I'm very skeptical of claims that contain weasel-words like "may" and "could" and "possibly".

<comment><AUTHOR> It's like beta software. Until it ships, the best anyone can say is "It may." When it ships, then they can say, "It does."

</comment></comment><comment><USER3> Did it strike anyone else as intellectually dishonest (or really sloppy?) that that entire article seemed to come from a parallel reality where SSDs don't exist?

I get that this would be an improvement over current SSDs. But to not even mention them while at the same time saying thigns like:

"In a first step, one could envisage attacking the Flash market and replacing the USB sticks with something much faster..."

"One could imagine the technology being useful for both small mobile devices (such as smartphones) and large systems (such as servers)."

Yes! If only there were some sort of non-volatile, low power, shock resistant, storage technology which were orders of magnitude faster than rotating hard disks! We could call it some sort of Solid State Drive, and it would totally change the storage market!

</comment><comment><USER4> <http://en.wikipedia.org/wiki/Racetrack_memory> is worth a read.

</comment><comment><USER5> The article did not make this clear, but this is non-volatile memory (according to Wikipedia). Anyone know this compares to memristors? Or is that apples and oranges?

<comment><USER6> It's certainly in the same general category of nanotechnology-enabled non- volatile solid-state memory technologies. Off the cuff, I would guess (emphasizing _guess_ ) that memristors will have better access times while racetrack looks like it might be denser. But the big question is manufacturability. There's already a pilot project to produce memristor memory. Racetrack, even if it's superior in the abstract (and I'm not sure it is), might just be too late to the party. It's not even completely clear that memristors will edge out flash, which after all has massive momentum at this point, but I think the odds are good -- memristors are (or can be) much faster.

</comment></comment><comment><USER7> You have to wonder about someone working on "memory of the future" who makes analogies like this:

 _" "It's like reading an entire VHS cassette in less than a second."_

I don't know about the rest of you but I think we're close to done using magnets to store data...

<comment><USER8> This used the word "spin" prominently, which leads me to believe that it is using spintronics: <http://en.wikipedia.org/wiki/Spintronics> , which may involve the word "magnetic" but is not actually based on magnets in the way you meant it.

<comment><USER7> Wow, that was an awesome read; thanks for passing it along!

I was mostly just poking fun at the reference to VHS but you are correct in your assessment of the "license" I was taking in my reference to magnetism.

</comment></comment></comment><comment><USER9> This reminds me a little of reel-to-reel tape storage. It seems to me that the throughput could be enormous but the seek time would vary according to how physically long the race track was, so if you double the capacity you double the seek time. Or am I getting the wrong end of the stick?

</comment><comment><USER10> Related: <http://news.ycombinator.com/item?id=1907318>

</comment><comment><USER11> It seems like they were right about Singularity!</comment>


Ask HN: Is Google playing the Walmart game? - <AUTHOR>

This just popped up on my reddit feed:
http://www.youtube.com/watch?v=F5qRs2dBoK0
I am genuinely curious to find out what everyday product and marketing people on HN may think concerning the relation between this and the Nexus 4 launch by Google.
Some comments on Reddit and YT mention how Walmart policy seems to encourage this kind of behavior.
In fact, Psychology of SOLD OUT rarely fails. Do you think spending time hitting F5 on the Nexus4 release made you somehow similar to one of those fighters?
Does HN really think the aurea of cumbersomeness surrounding first sells of the Nexus lineup effectively reveals Google load balancing inefficiency? <comment><USER2> It's mostly just a side effect of just-in-time delivery. Modern businesses don't want to risk having too much inventory, so they instead end up having too little. I'm sure they don't mind the extra publicity gained from a sold- out product, but that's such a common occurrence these days that its bound to start losing its effectiveness.

Also, comparing someone who obsessively checks a website to see if an item is in stock to a person who physically assaults someone in order to save a few bucks is really ridiculous. No, they aren't in any way similar.

Another thing to consider is how quickly Google got the Nexus 10 tablets back in stock. The 16 Gig model was only sold out for about a day. The 32 Gig model was out of stock for several days, but now they are back in. I think that Google is working as hard as they can, its just that the number of people willing to shell out the money for a smartphone is significantly higher than the amount of people who are ready to drop 400-500 on a device that they may not need as badly.

</comment><comment><AUTHOR> Clickable link: <http://www.youtube.com/watch?v=F5qRs2dBoK0>.

</comment><comment><USER3> I don't think Google plays the Walmart game, at least not consciously. A new Nexus phone is a buzz enough on its own. What is worth considering is the unusually low price for a new flagship product, which I believe easily doubled the demand. I suspect a logistical issue of some sort; maybe 3rd party related.

The Black Friday comparison is a stretch, but one can see a resemblance in spirit. Put all those F5's in one room with a pile of Nexus 4's and, changes are, you will see some action.

</comment><comment><USER4> I don't really buy it. It's been ten days and they still aren't taking orders? Wouldn't they be missing out on the Christmas rush by doing this?</comment>


Heroku vs. AWS Revisited - <AUTHOR> http://www.smashingboxes.com/heroku-vs-aws-revisited/ <comment> grey-area As a low-value user experimenting with Heroku (and very impressed with their setup), but potentially interested in moving higher value services there, this is one thing which worries me - their billing is really vague _and_ retrospective, and they require a credit card even for free service if you use any addons - there should be an area where you can set up billing alerts for certain thresholds, and an option to set a threshold (right down to $0) for an app where service will be cut off rather than continuing to bill. That would provide peace of mind which I currently don't have about their services. I'm sure having this would also free up their support as quite a few people seem to go over limits by mistake.

A little experimental app could easily start to overrun limits without the user knowing and run up a huge bill, and this is the only thing about their service which I found unsettling - it gives the impression they're happy to trick you into paying more than you wanted, which I'm sure is not the intended one.

</comment><comment><USER2> It's a crime to make this comparison with the glaring omission of Engine Yard Cloud which fits smack dab in the middle of these two options.

With Engine Yard you get a proven, scalable, and supported Rails stack, except you retain complete control over it. You have a dashboard and support desk, but you also have root access and the AWS keys. There is complete transparency in what you are charged, and you can run anything you want, just add a chef recipe, you don't have to be nickled and dimed by an add-on or external service just because you need a different piece of software.

Heroku is great if it fits your use case, but if it doesn't then there's no reason you have to go completely vanilla EC2.

<comment><USER2> Why would someone downvote this. The mind boggles.

<comment><USER3> The original article was a commentary on Heroku with a short conclusion which included a comparison to the authors experience with AWS. Your comment reads like an ad for a third service which isn't at all related to the original article. If the piece was a general analysis of the PaaS market, maybe it would seem relavent, but to this particular topic it seem tangental. I can't down vote you but I can understand why someone would.

<comment><USER2> Okay but it's weird to jump straight to AWS when the exact complaints are the strengths of a parallel platform on the same cloud provider. It would be like if someone were saying they were leaving Windows for OS X because Windows is not open source, and totally ignored the existence of Linux. I'd say commenters would be within their rights to bring up the elephant in the room without being accused of shilling.

</comment></comment></comment></comment><comment><USER4> "I assumed there would be an additional step needed to opt-in before being billed"

Why would you assume this? I explicitly remember using the beta databases for free with the understanding that with the continued usage of those products outside of the beta period, I'd be charged.

Never assume. Always ask if you aren't sure.

<comment><USER3> I understand your point about not assuming, but I generally get negative feelings about companies that don't communicate _clearly_ when they make decisions for me that cost me money. I think that is the authors primary gripe.

<comment><AUTHOR> You're right. Compare the experience with AWS. They were clearly looking out for their customers best interest whereas with Heroku, it's not so clear.

</comment></comment></comment><comment><USER5> Try an opensource PaaS like Cloudfoundry. You can use cloudfoundry with bosh to spin multiple ec2 instance and deploy across all of them and you can scale up and down as you want.

I am not affiliated with Cloudfoundry and earn no money from them neither do i have any formal relationship with Vmware. I am bullish on cloudfoundry and use bosh multi-instance and multi-cloud deploy. You can see how cloudfoundry works by testing the commercial version on cloudfoundry.com and the opensource community based articles on cloudfoundry.org.

You can run Java, Ruby, Node, Python, PhP tec and comes preinstalled Postgresql, Mysql, Mongodb, Redis, Rabbitmq.

Go give it a ride.

<comment><USER6> I was pleasantly surprised with their customer support, but unfortunately they still miss a few features (not being able to run ssh commands on the server is one) that prevent me from using AppFog for anything serious for now. I'm keeping a close eye on them.

<comment><USER5> May be Appfog might work on enabling ssh because on local installs of cloudfoundry, you can run ssh commands.

[http://blog.newrelic.com/2012/01/26/removing-the- operating-s...](http://blog.newrelic.com/2012/01/26/removing-the-operating- system-barrier-with-platform-as-a-service-paas-part-2-a-guest-post-from-adron- hall/)

[https://groups.google.com/a/cloudfoundry.org/d/topic/bosh- us...](https://groups.google.com/a/cloudfoundry.org/d/topic/bosh- users/sdxVSidno5c/discussion)

</comment></comment></comment><comment><USER7> This is not a review. To call it that and for this to make it to the front page is a disgrace. This is a blog-rant about a billing dispute with Heroku.

<comment><AUTHOR> It's an update to a previous review (see the first link in the OP).

</comment></comment><comment><USER8> I think Jeff Bezos (Amazon CEO) said once: "The best customer service is no customer service".

Shameless Plug: There are much more cloud services out there these days. It's not just two. Have a look at the PHP ones here: [http://blog.fortrabbit.com/comparing-cloud-hosting- platforms...](http://blog.fortrabbit.com/comparing-cloud-hosting-platforms/)

<comment><USER9> I don't remember if this was my own or I read it somewhere else, but I sometimes say "The best software is no software".

</comment></comment><comment><USER10> It appears I still can open a support request in <https://help.heroku.com/tickets/new?query=ticket>

What the new interface appears to do is that it forces users to RTFM. Probably the first step every user in a self-serve system should do before opening a ticket.

After you have searched for the info, then probably you should open a ticket.

Now, if you have premium support. That is a whole new story.

</comment><comment><USER11> Heroku as a highly abstracted PAAS built over AWS should definitely make it easier for beginners. AWS is there if you need to hit the metal any time. Also the cost of Heroku abstraction is the flexibility you sacrifice in order to get things off the ground faster. You also lose out on new services introduced on AWS regularly or have to wait till similar functionality is available on Heroku.

</comment><comment><USER12> Tickets are most definitely openable by all, but yes, it is true that the link to open a new ticket is a little buried within the new help site.

As for current invoices amount, the old dashboard used to show you your current usage. I'm not sure when this got lost, but the new dashboard doesn't have it.

I can pretty much guarantee that Heroku are fully aware of both of these problems and acting on them…

</comment><comment><USER13> Agree with OP. Heroku really needs to add a billing status screen. If you host a free app it's confusing when they will start charging you for usage and how much it will be. You can look at past invoices which shows your how many dyno hours you used, but as far as I can tell there is no place to view this information for the current month until your bill arrives.

</comment><comment><USER14> I had a very similar issue as well with Heroku. Their support option is buried away in the site. I had a few questions about billing that weren't clear.

When I did find it their customer service was just nasty. "He doesn't have time..." after the fact I was willing to spend a couple hundred dollars doing business with them. He told The irony here is heroku is owned by salesforce....

</comment><comment><USER15> A coworker set 'tenancy' on EC2 to dedicated not understanding that it meant an extra $10 a hour charge!! The bill came in at a few thousand dollars that month. He contacted AWS and said it was set accidentally. AWS actually refunded the charges. From what i have heard, heroku doesn't do similar refunds, maybe AWS doesn't refund heroku charges.

</comment><comment><USER16> > _[...] believing they would remain free until their general release in_ > _August_ _. Heroku's blog post indicated they would notify users prior to > billing them._

OP then proceeds to cite the email which verifies just that: _"We will also begin billing for the paid plans as of August 1st"_

Regarding opt-in, he has already supplied his payment info as an existing customer.

Since OP expected this, and did not check in August, I can't help but feel this rant is a bit unmerited. Blaming Heroku is not entirely justified here.

<comment><AUTHOR> The email was a newsletter which contained many announcements unrelated to the impending charges. I felt they should have made the notice much more prominent and so I'm alerting other Heroku customers to be more vigilant.

</comment></comment><comment><USER17> While I haven't yet had to open a ticket through the new interface yet, in the past I've received rapid, competent direct answers from Heroku staff, both as a 'free tier' and then (very modest) paid-level user.

So these knocks against Heroku don't ring true for me. I even have to wonder if the author overlooked pointers/responses/notices (as with his opt-in- before-billing-begins assumption).

</comment><comment><USER18> I love Heroku and use it for everything, but I'd seriously reconsider AWS for some of my bigger apps if I could just get Elastic Beanstalk for Rack apps. Frankly, I'm shocked that this hasn't been released yet.

I'm an apps guy, not devops, and definitely not ops. I can manage an AWS deployment if I have to, but it's not on my top ten list of activities that I consider to be fun.

</comment><comment><USER19> Tickets can still be opened by searching for something in the knowledge base, then scrolling to the bottom.

Example: <https://help.heroku.com/search/django+settings>

That said, it is still way too difficult to find.</comment>


Hacks Book Bundle - <AUTHOR> https://www.humblebundle.com/books/hacks-book-bundle <comment><USER2> Can anyone comment about whether this bundle is worth getting?</comment>


Iran showing fastest scientific growth of any country  - <AUTHOR> http://www.newscientist.com/article/dn18546-iran-showing-fastest-scientific-growth-of-any-country.html

<comment><USER2> "Fastest growing" is usually an annoying statistic. It's really meaningless. Say Germany produced 100,000 scientific studies last year, and this year produced 150,000 studies, they grew at 50%. If Iran produced 1,000 studies last year and this year produced 2,000, they now have a 100% growth, capturing the "fastest growing" title.

<comment><USER3> Measuring the amount of papers is questionable as well. One paper with a ridiculous breakthrough (cold fusion, etc) could outweigh all the others.

<comment><USER2> Having gone through graduate school, I've seen my share of nonsense papers created just to have a topic for a thesis.

<comment><USER4> Same here, one of the reasons I quit my phd program. I saw how much of the publication volume is bs--it's really hard and rare to produce a meaningful research paper, and that rarity will only increase.

If you go to a top cs conference, chances are 80% of the papers are throw- away...literally no one will read other than the reviewers, and I'm talking about top-conferences let alone the countless lesser known ones. And to be honest, a lot of emerging countries seem to be mass producing a lot of low quality papers in CS, and it's flooding the field. One reason might be how cheap it is to fund a cs research project as opposed to an experimental physics or bio lab.

</comment></comment></comment></comment><comment><USER5> Papers are about as good an indicator of productive output as lines of code.

As mentioned briefly in the article, citations are probably a much better metric.

<comment><AUTHOR> that's too much oversimplification.. moreover there is, if any, a inverse correlation between lines of code and productive output. not so with papers,

</comment></comment><comment><USER6> I find it unhelpful when a single questionable statistic is used to support a complicated thesis. In these cases, it would be better to listen to experts whose opinion is based on a significantly more complicated set of criteria. In that case we still have to judge the quality of the expert, but perhaps if that seems daunting as well then we should perhaps consider ourselves unable to judge the answer at all. I find that more appealing than walking away with a certainty of opinion on the subject of this article.

</comment><comment><USER7> Iran can only accept any associated prize if it first demonstrates how such statistics are unscientific.</comment>


Laffer curve - <AUTHOR> https://en.wikipedia.org/wiki/Laffer_curve

<comment><USER2> The wrongest dude who ever was.

<comment><USER3> Funny, it's not even controversial among professional economists.

<comment><USER4> It's not even controversial to anyone who knows math. It's a consequence of the intermediate value theorem.</comment></comment></comment>