Show HN: Studyr – Student Planner for iOS - <AUTHOR> http://studyr.app <comment><AUTHOR> Hey HN,

Made a new student planner for the iPhone

Complete enrollment management with terms, courses, homework, and gradings. Support for repetitive and MWF classes, including attendance tracking. The calendar shows you all the study data, not only your classes. Switch easily between month and week mode. Your calendar can also be shared with Google Calendar, Outlook, Apple Calendar or any other 3rd party app which supports the .ics format.

Create homework and gradings with full support for repeating occurrences. Use filters to easily see what's important right now. Customize the grading scale to your needs and have all your marks and course averages at hand, including GPA.

<comment><USER2> Does this integrates with Banner? That would be a killer feature if it did (like Coursicle), that's what most schools use for their registration (despite it having a very poor UI/UX IMO).

<comment><USER3> Banner (and Ellucian) is my trigger word.

<comment><AUTHOR> Having integrations with ERP systems in the education space would be a great way to save students the trouble to enter all the enrollment data like classes, etc. The issue is that there are simply too many different systems across the globe, lot of them without anything resembling an API. Ellucian Banner looks interesting, will check it out further, thanks

<comment><USER2> Absolutely, and I think that's what would give a good opportunity for monetization in this space. Someone whose willing to deal with the lack of APIs, differing versions, incorrect SSL configs, etc. and put it into a user- friendly app will be able to get value directly from the end users--students and profs--and disrupt the lack of innovation from Ellucian et al.

</comment></comment></comment></comment></comment><comment><USER4> Hm I am not able to view the website but, there seems to be a ton of student planners available nowadays

\- [https://istudentpro.com/ios.php](https://istudentpro.com/ios.php)

\- [https://semesterplanner.com](https://semesterplanner.com)

\- [https://myhomeworkapp.com/](https://myhomeworkapp.com/)

Just to name a few. Nonetheless good job on the app and even though the space is crowed this is a very clean designed app.

</comment><comment><USER5> Link won't open

<comment><USER6> Same here; appears slashdotted. The Wayback Machine got a snapshot, though: [http://web.archive.org/web/20190729011518/https://studyrapp....](http://web.archive.org/web/20190729011518/https://studyrapp.github.io/website)

<comment><AUTHOR> Hope site works better now. Here is direct App store link otherwise: [https://apps.apple.com/us/app/studyr/id1460691685?uo=4](https://apps.apple.com/us/app/studyr/id1460691685?uo=4)

</comment></comment></comment><comment><USER7> Is it different from iStudiez in any way? [https://istudentpro.com/ios.php](https://istudentpro.com/ios.php)

<comment><AUTHOR> That's a really great app which has been around for a long time. I tried to make some things a little different.

For example emphasising on the three different types of data (class, homework, grading) with each having it's own view, but still showing all of them in the calendar to have a summary of what's going on. Sharing your calendar with Google Calendar, Outlook or similar also allows you to select which type of data you wanna share.

Or being able to set a repeat of any item, not just a class. So you can create for example a repeating quiz grading over several weeks.

There are more, smaller differences like you can enter extra-curricular events that to not belong to any course. Or have an attendance tracking where you can skip single classes and see an overview of skipped ones..

</comment></comment><comment><USER8> Why even bother hosting a landing page yourself? Use Github Pages, or S3.

<comment><AUTHOR> Actually the site is hosted on Github pages, that's why I was surprised to hear it was down some hours ago

</comment></comment><comment><USER9> Site appears to be down

</comment><comment><USER10> How is it different from Studyguide... your other app...?</comment>


Ask HN: Photo sharing idea I had awhile back ... - <AUTHOR>

My friend asked me recently: "Can I get global coordinates printed on the picture I take with my phone." I said "I dunno ... but I could quickly build an app for you."
Now the idea borne out of that convo was to create something like a global repository -- graph of pictures, connected together by coordinates of where they were taken.
One cool use I thought was to see/explore photos of areas I would like to visit (like fiji or amsterdam for e.g.).
I am interested in ... * whether anyone thinks this is a good idea, useful and fun? * other cool uses for this * or, if it already exists in some form -- I assume there are photo sharing apps with these capabilities but in the extrapolated form I presented? <comment><USER2> This uses image analysis to achieve similar goals in 3D: <http://en.wikipedia.org/wiki/Photosynth>

</comment><comment><USER3> Isn't this what the photo layer in Google Earth does?

<comment><USER4> Or Panoramio?</comment></comment>


Comparative Benchmark of Arm, AMD, and Intel for Cloud-Native Workloads - <AUTHOR> https://kinvolk.io/blog/2019/11/comparative-benchmark-of-ampere-emag-amd-epyc-and-intel-xeon-for-cloud-native-workloads/ <comment><USER2> Should be mentioned the AMD CPUs featured are the previous generation (7401) CPUs.

<comment><USER3> The current eMAG (Skylark), though it is current, is not very new either. It's a 16 nm design from last year. They wanted to launch Quicksilver in 2019, but there's like one month left..

<comment><USER4> Sounds like it will be sampling this year: [https://www.datacenterknowledge.com/hardware/ampere-gears- la...](https://www.datacenterknowledge.com/hardware/ampere-gears- launch-7nm-80-core-arm-chip-cloud-data-centers)

</comment></comment></comment><comment><USER5> _In multi-thread benchmarks of raw memory I /O we found a clear performance leader in Ampere's eMAG, outperforming both AMD's EPYC and Intel's XEON CPUs by a factor of 6 or higher_

That doesn't sound right. Neither AMD nor Intel get more than a handful of GB/s in basic memory I/O? Any idea what could be wrong?

<comment><USER6> It doesn't sound remotely right to me either. It could be NUMA since the Intel and AMD systems are NUMA but the eMAG is not. The code for this benchmark appears to be [https://github.com/akopytov/sysbench/blob/master/src/tests/m...](https://github.com/akopytov/sysbench/blob/master/src/tests/memory/sb_memory.c) which... is not an interesting way to benchmark a large server IMO. Running a single process with a lot of threads and a lot of RAM on a NUMA server is going to perform poorly (unless you do a lot of tuning which I don't recommend either). "Microservices" might run a lot faster.

<comment><USER7> Are you sure about that? I got the impression that should work well under Linux, unless you create a lot of contention.

</comment></comment></comment><comment><USER8> If you are interested in development workload (ARM porting) instead of "cloud- native" workload, I did one here: [https://github.com/sanxiyn/blog/blob/master/posts/2019-11-12...](https://github.com/sanxiyn/blog/blob/master/posts/2019-11-12.md)

In addition to Packet, both AWS and Scaleway were also benchmarked.

</comment><comment><USER9> Wouldn't most things need Hyperthreading off to be secure on Intel or is it fine if you have your own hardware?

<comment><USER10> That's only fine if you know all code running in all parts (containers) on the same hardware node. Code running on one container can influence data/code from other containers. (When some third-party has a form of code execution)

<comment><USER11> Privilege-aware scheduling could colocate only same-container (or same-user, or same-process) threads on HT pairs.

</comment></comment></comment><comment><USER12> And for the Worldwide LHC Computing Grid, the Power8 came out on top.

Dutch article:

[https://tweakers.net/reviews/7426/datavloedgolf-lhc-op- komst...](https://tweakers.net/reviews/7426/datavloedgolf-lhc-op-komst-nikhef- bereidt-zich-voor-met-rappe-opslag.html)

</comment><comment><USER13> _In the memcopy benchmark, which is designed to stress both memory I /O as well as caches, Intel's XEON shows the highest raw performance_

I am not surprised by that, given that x86 has a single instruction that will copy arbitrary number of bytes in cacheline-sized chunks --- something that ARM does not have.

<comment><USER6> It seems like the bottleneck should be the memory hierarchy, not executing instructions. /RISC4EVER

</comment></comment><comment><USER14> I'm very impatient to look RISC-V coming to look performance/security. Don't forget to disable a lot of features about Intel if you want a full secure environment like SMT/Hyper-Threading

About ARM, Cloudflare uses them : [https://blog.cloudflare.com/arm-takes- wing/](https://blog.cloudflare.com/arm-takes-wing/)

</comment><comment><USER15> Very impressive perf on ARMs side given it competes against decades of x86 specific optimisation in the code.

Intel for example for long intentionally made float performance close to integer of same size, so there was no perf difference in scripting languages that use float internally for all computations.

ARM sucks at web benchmarks because ARM never put any accent on fp perf. Many ARM cores simply don't have fp units at all. The most popular JS vm V8 does a lot of useless float>integer and back conversions under the hood, and that doesn't help either. They are almost free on x86, but degrade js perf on smartphones by double digits.

Second, vector math and vector float math have close to no use in web loads, but a lot of devs still try to put SSE instructions everywhere simply because SSE is many times faster than simple math and many binary manipulations on x86.

ARM on other hand is relatively good with making a lot of ops on byte and double data, because it was historically never aimed at number crunching with extra wide vector instructions.

For the same reason ARMs UCS-2 and UTF-16 parsing performance is that bad. All kinds of parsers exploit fast register renaming on x86 to run tzcnt with very good perf, but they have to revert to relatively slow SIMD bitmasks on ARM. You can feel that a lot when you work with VMs/interpreters that use UCS-2 as their internal unicode implementation.

Hardware peripherals were always x86 optimised too. Yes, almost every device you can hook onto PCIE has been extensively optimised to work well with x86 style DMA, and some higher level APIs like I/O virtualisation, DMA offload engines, and assumptions about typical controller, memory, and cache latency.

Yes, even endianness conversion is there to make x86 jump ahead. Almost all "enterprise hardware" intentionally uses little endian in its protocols, to avoid endianness conversion on x86. Of course at the cost of doing it on big endian machines, that include ARM.

P.S. On other hand, nearly all peripheral ICs aiming at embedded market prefer big endian for an opposite reason.

<comment><USER16> Modern ARM is bi-endian but rarely run in big endian mode.</comment></comment>


Google Drive pages very slow to load using Chrome - <AUTHOR> http://productforums.google.com/forum/#!topic/drive/CrQeAKvARiE

<comment><AUTHOR> I am experiencing the same on high end PCs.</comment>


Ask YC: Content Delivery Networks - <AUTHOR>

Anyone had a good experience of a CDN provider? We're just looking for somewhere to offload our static files (images, style sheets. JavaScript) to help the site run faster, no requirement for streaming media or anything like that.<p>We don't need much storage, nothing fancy - just well-distributed servers.. And 'affordable' (cheap). <comment><USER2> Here's a list of commercial CDN's: <http://www.web-caching.com/cdns.html>

and, academic: [http://en.wikipedia.org/wiki/Content_Delivery_Network#Academ...](http://en.wikipedia.org/wiki/Content_Delivery_Network#Academic_CDNs)

And, S3 is storage, not a CDN.

</comment><comment><USER3> I've had good experience with Panther Express: <http://pantherexpress.com/>

</comment><comment><USER4> At my previous employer, we used CacheFly and were pretty happy with them. However, I know a lot of people are happy with S3.

</comment><comment><USER5> We use Mirror Image. Relatively cheap, once we beat them up^W^W^Wnegotiated a bit over price.

</comment><comment><USER6> you can use our service at www.i2drive.com We can provide you with good support too.

</comment><comment><USER7> use www.bitgravity.com

</comment><comment><USER8> Amazon S3?</comment>


AsusWRT sends network traffic data to Trend Micro if certain features enabled - <AUTHOR> https://ctrl.blog/entry/review-asuswrt#section-asuswrt-privacy <comment><USER2> I own an ASUS RT-AC68U. To be clear, this is an opt-in feature. When you switch the toggle button that enables any of these features, you're immediately greeted by the EULA, making it clear that what you're doing has more implications than just "turn the feature on".

I wanted to see bandwidth usage history/analysis, so I was going to enable it. When I was greeted by the scary EULA, I backed out and didn't turn it on.

To be fair, I'm not sure how a router like this could actually perform this functionality _without_ sending information to an upstream service to manage the data. Simply not enough computing power / storage to support those features locally.

I don't want to send my data to ASUS/Trend Micro, so I didn't enable it. I don't think there's anything malicious going on here.

<comment><USER3> A few years ago my mother had some problems with her internet, she had recently changed her old D-LINK to a brand new flagship ASUS router. So while visiting her I played around with web interface and not many minutes in I managed to gain RCE allowing me to access a full root shell on the router via HTTP and I were even able to fetch the shadow-file. I searched the web and found several similar flaws,

Ever since whenever someone I know is about to buy an ASUS router I make sure to warn them and tell them to at least making sure to run the latest firmware if they go through with the purchase. As for my mother I brought over an old C2D-box which I hooked up with a couple of old Intel Pro Server GBE-nics, configured a NetBSD firewall+nat and reconfigured her router to act as a* dumb access point.

*Should I use an here since the object it is acting upon is started with a vowel or should I let the adjective rule the indefinite article? English isn't my first nor second language and I always struggle with these things so I appreciate any guidance.

<comment><USER4> Your English is very good, I was skim-reading and actually didn't even notice any mistakes until I saw your question at the bottom so I re-read the whole thing, but I thought you may want some comments:

> and I were even able to fetch

should be "I was"

> to at least making sure

should be "to at least make sure"

Other than that a few commas would be nice to make some of those long sentences flow a bit smoother. If you were speaking, you'd need to take a breath somewhere!

You are doing ridiculously good for a third language though!!

I have a lot of respect for people who learn languages, it shows a lot of courage and curiosity.

<comment><USER3> I can't edit my comment anymore but I've taken notice of your critique, thank you very much for being so helpful!

</comment></comment></comment></comment><comment><USER5> Please don't editorialize titles. The whole article is interesting. It's better to add a comment once the article appears on the |new| page.

Title, _Review: ASUSWRT router firmware_

Link to top of page, [https://ctrl.blog/entry/review- asuswrt](https://ctrl.blog/entry/review-asuswrt)

<comment><USER6> On the other hand, I probably would not have clicked through to the underlying article if it were not for the title as written (ASUS Router Sends Data to Third Party). The whole blog post feels a bit like an exercise in burying the lede.

The rest of the review is interesting, for sure, and worth reading. But the actual bombshell here is that the firmware indeed sends data about your browsing to trend micro if you activate some of the firmware's advanced features.

</comment></comment><comment><USER7> Even more reason to install alternative firmware. I run Tomato by Shibby on my Asus and it works great.

[http://tomato.groov.pl/](http://tomato.groov.pl/)

<comment><USER8> Not really, it's opt in and provides a EULA

<comment><USER9> For features that really don't seem like they should require this opt-in and EULA nonsense.

</comment></comment></comment><comment><USER10> So does Meraki, Cisco, ... Well they give you an option to send your data to the company.

<comment><USER8> Asus provides it as an opt in option :) it's not on by default

</comment></comment><comment><USER11> Google and Microsoft do the same to check URL reputation...

</comment><comment><USER12> I use an Asus RT-68P. The EULA did scare me off from running all of the services listed in the article, with the exception of "Web History", where I do not recall having seen any indication that my history would be leaked. But, regardless I just turned off that function.

I agree with the author's disappointment in Dynamic DNS support. But, I followed instructions on the web[1] and added a cheap USB thumb-drive to run a script on every router boot. This script sets up a cron job that supports DuckDNS.org, and fixes other annoyances like turning off all the router's LEDs.

[1] [https://www.securityforrealpeople.com/2015/08/cron-on- asus.h...](https://www.securityforrealpeople.com/2015/08/cron-on-asus.html)

Edit: Grammar, and a clarification.

</comment><comment><USER13> Btw anyone ever measured that gamer shaped wifi routers with fancy remote apps sell better? I was going to buy into Google's Wifi solution until I realized you manage it with an App. Is that really what customers want or is it just the marketers brainfart?

<comment><USER14> Aren't those apps just a replacement for people who can't (or don't know how to) login into and manage their router ?

<comment><USER15> Typing in raw IPs in the URL bar is not something many laypeople are comfortable with exactly. Private LAN addresses seem odd if you navigate the web with a search engine.

<comment><USER16> On the other hand some ruters use url's like [http://routerlogin.net](http://routerlogin.net) and from my perspective that seems dodgy since that could mean all the routers are centrally configured somehow.

</comment></comment></comment></comment><comment><USER17> I wonder if Asuswrt-merlin does the same.

<comment><USER18> Last I checked (RT-AC87U owner here), most of the features are still there, but still opt-in. I believe there's one I can't name off the top of my head that was neutered, though.

</comment></comment><comment><USER19> Hmm, any suggestions on a good router that won't spy on me?

<comment><USER20> Turris Omnia

<comment><USER21> Omnia is a good concept, but the execution isn't quite there yet. I had ordered one, which I ended up returning due to a broken hardware part and less than stellar software. Maybe in a couple of years, it will be a solid platform.</comment></comment></comment>


4 Sales Mistakes That Lead to High SaaS Churn - <AUTHOR> http://sixteenventures.com/sales-mistakes-cause-saas-churn <comment><USER2> "Don't just focus on closing more deals – focus on closing better deals."

There's a lot of common sense advice in this article. Funny thing is, most SaaS products you sign up for, you wish they'd be selling you with more common sense. I like how this article really focuses on getting the basics right, and has specific action steps.</comment>


Visual Studio Code Update – October 2018 - <AUTHOR> https://code.visualstudio.com/updates/v1_29 <comment><USER2> I think my only complaints on VS Code these days is if I use git bash (msys) as my main terminal, sometimes the rendering and responses are borked (nano in particular is very bad). Also, sometimes on a restart/reload, the attached processes running in terminal views is detached, and running in the background still.

Overall, VS Code is incredibly solid and hands down my favorite editor/coding utility today. Starting to get some UI integration for settings, though I think often the JSON is easier to edit directly still.</comment>


The Tel Aviv Cluster - <AUTHOR> http://www.nytimes.com/2010/01/12/opinion/12brooks.html?

<comment><USER2> I considered rewriting his first two paragraphs, replacing "Jews" with "whites" and updating the numbers accordingly, but then thought better of it. Instead I will offer this:

Broooks quotes Steven L. Pease "The Jewish faith encourages a belief in progress and personal accountability. It is learning-based, not rite-based."

1) While I acknowledge the importance of learning in Judaism, I find it a bit odd to claim that a religion with 613 commandments is not "rite-based"

2) These were the same values of the original Puritan settlers in New England - in fact they even saw themselves as modern day Israelites, chosen by God to go into an unknown land and build a city upon a hill. They rejected the Catholic rituals of the Anglican church, and to this day Boston is a city whose message is "you should be smarter." (<http://www.paulgraham.com/cities.html>) Furthermore, U.S. progressivism grew out of the Unitarian church at Harvard and the Transcendentalists, both in New England.

<comment><USER3> Essentially all appeals to culture as an explanation are "X does Y, because they do. We have no convincing explanation at to why, but ??? is unsatisfying so we're putting down the reason as 'culture'." For this argument at much greater length, see "Making Common Sense of Japan", which is sadly out of print. (I go back and forth on how much stock I put in it.)

Speaking of which: if book learning and rejection of religious rites makes startups, then you all should be working for Japan, China, or Russia by now, and I should be getting drunk or whatever it is us papists do when not steeping ourselves in dogma. ;) This of course invites the cultural non- explanation: well, granted we did just say that book learning mattered, but there is another offsetting feature of Japanese/Chinese/Russian culture which means it doesn't quite work for them. Oh, except you've got stats which say that Japan actually _does_ have a lot of startups? No problem -- it's what you would expect given their culture and all.

<comment><USER4> This reminds me of Nassim Taleb's piece about his discussion on the Black Swan theory[1] with an Italian colleague. The colleague argues that he would not have come up with the theory had he grown up in a Protestant culture because of its Platonic tendencies. Suffice it to say, Taleb uses hard evidence to prove such causality doesn't exist.

In Outliers[2], Malcolm Gladwell shows why Jewish lawyers tend to be more successful. A few decades ago, it was difficult for Jews to find work at the top Wall Street firms because of the WASP[3] tradition. So instead they established their own firms and handled work that the WASP firms refused to touch, such as corporate takeovers. This work later became big in the 80's, and the Jewish firms were the ones that had all the experience, so the money went there.

It would be easy (and naive) to attribute the success of Jewish lawyers to their cultural heritage, but Gladwell's explanation is much more convincing, and he actually uses data to back his assertions up. I do think culture influences mindsets, but I also think it's practically impossible to discover how it does so. Arguments like the author's are absurd. However, it is fascinating how successful Jews tend to be overall, as pointed out in the article. I wonder what alternative explanations there are.

1: <http://en.wikipedia.org/wiki/Black_swan_theory>

2: <http://en.wikipedia.org/wiki/Outliers_(book)>

3: <http://en.wikipedia.org/wiki/White_Anglo-Saxon_Protestant>

</comment></comment></comment><comment><USER5> "Tel Aviv has become one of the world's foremost entrepreneurial hot spots. Israel has more high-tech start-ups per capita than any other nation on earth, by far. It leads the world in civilian research-and-development spending per capita. It ranks second behind the U.S. in the number of companies listed on the Nasdaq. Israel, with seven million people, attracts as much venture capital as France and Germany combined."

That's why the submitted article is Hacker News. The yeah, buts later in the article are an interesting analysis of what can endanger start-up-friendly places.

<comment><USER6> I wish they would compare per-capita numbers on a city by city basis. Since startups tend to congregate in certain cities, the per-capita numbers for whole countries don't really tell you much. In this case, the Bay Area is about twice as populous as Tel Aviv, but the US is about 40 times more populous than Israel, making that national per-capita figure kind of meaningless.

</comment></comment><comment><USER7> I guess Brooks knows his audience but it's generally not a good idea to write things like this. Another example:

[http://www.latimes.com/news/opinion/commentary/la-oe- stein19...](http://www.latimes.com/news/opinion/commentary/la-oe- stein19-2008dec19,0,4676183.column)

 _I have never been so upset by a poll in my life. Only 22% of Americans now believe "the movie and television industries are pretty much run by Jews," down from nearly 50% in 1964. The Anti-Defamation League, which released the poll results last month, sees in these numbers a victory against stereotyping. Actually, it just shows how dumb America has gotten. Jews totally run Hollywood._

<comment><USER8> What's your point? Is it that we shouldn't publicly talk about some statistics for fear that people might draw the 'wrong conclusions'. What if Stein was right and 'Jews' actually did run Hollywood? (BTW I really don't know or care) Would that be a piece of information that should reflexively suppressed?

</comment></comment><comment><USER9> "The Jewish faith encourages a belief in progress and personal accountability."

I don't think this is the case. But as he has given no evidence for such claims I will not bother giving any evidence.

Is not much of Israel's success not from economic assistance from the US and the Jewish diaspora? As a welfare state, Israel hasn't done too bad but I don't think it has excelled at all in any measurable way in technology. Most of these startups are based on contingencies set by military aid given by the US to Israel. As others have stated, speaking about start up companies (are they even successful?) per capita doesn't make much sense when you're comparing countries that are as diversified as much as the US and as large.

"It ranks second behind the U.S. in the number of companies listed on the Nasdaq."

And?

"Israel, with seven million people, attracts as much venture capital as France and Germany combined."

Well, France and Germany don't have large groups of people living outside sending money into the country for whatever reason.

"Some oil-rich states spend billions trying to build science centers. But places like Silicon Valley and Tel Aviv are created by a confluence of cultural forces, not money."

So now Tel Aviv should be comparable to Silicon Valley? Isn't the article supposed to be persuading us to believe this?

"The surrounding nations do not have the tradition of free intellectual exchange and technical creativity."

I guess he's never read a history book. Is he speaking about recent history?

"For example, between 1980 and 2000, Egyptians registered 77 patents in the U.S. Saudis registered 171. Israelis registered 7,652."

How many of those patents are military related? Yes, we know that Egypt and Saudi Arabia are not the pinnacle of innovation. Wow, look how many more patents Israel has compared to the whole of Africa.

<comment><USER10> The article is particularly light fluff. But your counterpoints miss the mark considerably.

. * Nasdaq Listings: Noteworthy. How many UK firms are there?

. * Military Patents: What is less meaningful to you with them being military related?

. * Outsde Captial flows from Diaspora:

You seem to think captial flows collected in the diaspora go into some big venture fund. It doesn't. It goes to ambulances [with labels on the side telling you which country donated] and other equipment.

Some portion of diaspora donation goes to those crazed fanatic settlers who are nothing but trouble. But those settlers are funded through side channels of existing relationships to idealogically similar diaspora members.

What is more worrying about the diaspora is that they produce some of the crazy settlers in the first place, who arrive from outside to Israel ready to cause problems

</comment></comment><comment><USER11> This point has been made many times before, eg. by Feynman in Surely You're Joking, where he points out that jewish people seem to value and encourage education more than other groups. For balance, he also shares an anecdote where jewish students ask him whether pushing the button on the elevator should be considered work [a question Feynman considers ridiculous], which is forbidden on Saturday in the jewish religion. (The two stories may not be told together by Feynman, I don't remember.)

<comment><USER12> I think what they asked him was if electricity is the same as fire, which he then started to explain only to be disappointed that they asked it just to determine if using the elevator is work (apparently starting a fire is work, or something like that).

</comment></comment><comment><USER13> I think this is a quite disturbing article, comparing religious belonging to some sort of intellectual superiority.

</comment><comment><USER14> This article sounds like the Calvin & Hobbes cartoon extolling the many virtues of tigers.

<comment><USER15> What do you mean? David Brooks isn't Israeli, is he?

<comment><USER16> Hobbes is not a tiger either, is he? :-D

</comment></comment></comment><comment><USER16> In 2008, Physics Nobel laureate David Gross gave a talk at Technion [1] and mentioned that this belief that Jews are smarter is dangerous, as it may give Israelis the impression that its accomplishments are God-given, and not due to hard work.

Personally, I found this article somewhat weak. I think [2]-[4] are more informative.

[1] <http://www.youtube.com/watch?v=iNmZqH01nX0>

[2] [http://freakonomics.blogs.nytimes.com/2009/12/04/how-did- isr...](http://freakonomics.blogs.nytimes.com/2009/12/04/how-did-israel- become-start-up-nation)

[3] [http://www.businessweek.com/smallbiz/content/jan2008/sb20080...](http://www.businessweek.com/smallbiz/content/jan2008/sb2008012_744161.htm)

[4] <http://news.bbc.co.uk/2/hi/business/7654780.stm>

</comment><comment><USER17> _During a decade of grim foreboding, Israel has become an astonishing success story, but also a highly mobile one._

\- That pretty much sums it up for me. I'm totally convinced. You guys?

Honestly though if we're going to post politically charged articles to HN can we at least get some from more respected columnists like Seymour Hersh or Thomas Friedman.

<comment><USER18> If these two are more respectful, I say let's better stay away from "political charged" articles entirely.

<comment><USER17> Oh please. He's quoting patent numbers from Egypt and Saudi Arabia and comparing it to Israel.. It's like comparing US patent numbers to Mexico.. Are you kidding me..?

And he praises their prime minister Netanyahu for being an optimist. Netanyahu is a pretty controversial figure to say the least, even amongst Israelis.

Is it any surprise this is an Op-Ed piece?

EDIT: So a theocracy mired in civil war and at the center of so much religious and cultural tension on a global scale is a success story comparable to Silicon Valley? Yeah, great article...</comment></comment></comment>


Show HN: Brackets Ninja – Create brackets for tournaments and championships - <AUTHOR> http://bracketsninja.com A new tool I created allows you to create Brackets for managing leagues, tournaments, and championships online!
The tool is extremely recommended for office sports.. :)
What do you think? <comment><USER2> Sweet, going to use it for my LAN-Parties!</comment>


After Dinner Project - Kindle Book Shopper - <AUTHOR> https://chrome.google.com/webstore/detail/jaccigkfdmcemjkpencdmgkifgednjab Over the holidays I toyed around with scratching an itch I've had with purchasing Kindle books from Amazon.  It's just too hard to casual browse through the offerings.  So I came up with a small chrome web app.
https://chrome.google.com/webstore/detail/jaccigkfdmcemjkpencdmgkifgednjab
I'm mulling over taking it to the next level.
Thoughts, feedback and suggestions.   And yea, I know the UI sucks.  It would be first on the list.
The Problem I'm Trying To Solve: Can't browse the long tail of Amazon's Kindle book offerings quickly and easily.
I don't want to replace Amazon's shopping experience, just offer a complementary alternative.
It's currently running on an EC2 micro at 3 cents an hour so be gentle.  Look at it cross eyed it'll probably fall over. <comment><AUTHOR> Over the holidays I toyed around with scratching an itch I've had with purchasing Kindle books from Amazon. It's just too hard to casual browse through the offerings. So I came up with a small chrome web app.

[https://chrome.google.com/webstore/detail/jaccigkfdmcemjkpen...](https://chrome.google.com/webstore/detail/jaccigkfdmcemjkpencdmgkifgednjab)

I'm mulling over taking it to the next level. Thoughts, feedback and suggestions. And yea, I know the UI sucks. It would be first on the list.

The Problem I'm Trying To Solve: Can't browse the long tail of Amazon's Kindle book offerings quickly and easily. I don't want to replace Amazon's shopping experience, just offer a complementary alternative.

It's currently running on an EC2 micro at 3 cents an hour so be gentle. Look at it cross eyed it'll probably fall over.</comment>


Show HN: LastingPaper – A Desktop App for Your E-Ink Kindle - <AUTHOR> https://www.lastingpaper.com <comment><USER2> I like the idea and will give the app a go. I think most other comments so far are being extremely nit picky. Sure he graphics needs work, but it's unfortunate that commenters seem to only be able to comment on that.

Give the guy a break!

</comment><comment><USER3> Does this only work with the Amazon Kindle, or can you use any e-reader? Standard EPUB support would be nice.

<comment><AUTHOR> LastingPaper is design to be a "helper" for Amazon E-Ink Kindle.

As a longtime E-Ink Kindle user, I wish there would be a software existed ,but there isn't, so I create LastingPaper.

But I think the webpage to Ebook local convertor and eBook management features could help other e-reader user to a certain extent.

When you have generated a eBook using LastingPaper, you can right click the virtual cover, there will be a "Open eBook storage folder" menu item. Clicking it, you will find a standard ePub Ebook file there.

</comment></comment><comment><USER4> "Sorry , current version only available for 64Bit Mac and Windows."

<comment><USER5> Very sad

</comment></comment><comment><USER6> I currently use 'Send to Kindle' official extension/app to do this. I once thought of creating custom setup using calibre API to do the same without sending the data to Amazon; So I think you to highlight that Privacy part, perhaps a table comparing the features between 'Send to Kindle' & 'LastingPaper' would be helpful.

Physical connection and not using Internet for conversion should mean faster transfer as well.(I haven't tried it yet).

</comment><comment><USER7> Is there a way to convert PDFs to Kindle format though ? I'd love to have research papers on kindle.

<comment><USER8> Calibre handles this very well. Plug in kindle > open calibre > go to device settings and uncheck pdf support > add books and calibre automatically converts to .mobi

<comment><USER7> Thank you :) have to try this and see.

</comment></comment></comment><comment><USER5> Sad that there's no linux version, I would have loved to try this.

</comment><comment><USER9> I can't figure out how I am supposed to connect it to my Kindle.

<comment><AUTHOR> When you attach Kindle to the computer using a USB cable, your Kindle will be a USB storage device. As long as LastingPaper found there is a Kindle as a USB storage device attached to the computer, It could copy eBooks to your Kindle and could read highlight logs from the Kindle.

</comment></comment><comment><USER10> No Linux version :/

<comment><USER5> Can relate

</comment></comment><comment><USER11> The idea is good and I'm always looking forward to the day where there's a good alternative to Calibre.

Unfortunately the design is giving me a very strong Calibre vibe.

Some suggestions that I think don't look good on top of what the other people already said:

\- 3 different fonts, unify it to use one (and none of them should be Papyrus)

\- The book covers are the main part of your app, so they should stand out by either using the book cover, or a place holder which the book title being presented in a way that doesn't result in 5 line breaks

<comment><USER12> Calibre is not bad if you stick to the CLI utilities and avoid the GUI. ebook- convert in particular is pretty much all I need from Calibre. I normally run it with the following options:

      ebook-convert input.someformat output.mobi --remove-paragraph-spacing --change-justification=justify --enable-heuristics --unsmarten-punctuation

(It's picky about the ordering of the input/output vs the flags)

<comment><USER11> I usually download some additional metadata and then send it to my Kindle via the "Mail to Kindle" Mail address, I could probably script that part easily but for the few times I use it right now I'll just have to stick to the GUI.

<comment><USER13> There's a project called COPS which adds a small web site to your Calibre library so you open it in the Kindle browser - it's pretty convenient:

[https://github.com/seblucas/cops](https://github.com/seblucas/cops)

[http://www.linux- magazine.com/var/linux_magazin/storage/imag...](http://www.linux- magazine.com/var/linux_magazin/storage/images/media/linux-magazine-eng- us/images/cops/552543-1-eng-US/cops_reference.png)

</comment></comment></comment></comment><comment><USER14> "Some webpage" should be "some webpages" I think :)

</comment><comment><USER15> Very cool!

</comment><comment><USER16> This looks like an electron app. Is it, and if so can you make Debian/Ubuntu releases? Depending on what you're doing it should be a relatively simple change to your build process.

I'd definitely try this out if it was available for Ubuntu.

<comment><AUTHOR> @iudqnolq Yes! The UI of LastingPaper is built on ElectronJS. I'm used to be a long-time desktop Linux user too. I would like to release it on the Linux platform. But at current, the highest priority of LastingPaper developing is fixing feedback problems submit by early-stage users. After there no more obvious problem and un-implementation future existed, I will spend time to release a Linux version. I will inform it to you at that time, Thanks for your attention!

</comment></comment><comment><USER17> First, the good. There are a lot of nice ideas here. I especially like that somebody is working on the problem of getting highlights and notes out of the device. Does the Kindle have to be physically connected to the computer, or does it work over the network?

There's also bad... I hate to say this, but I don't think I would use the app because of the way it looks. For example, look at the top screenshot with the tiles for the books and the postage-stamp image in the bottom right corner. IMHO, it doesn't look good. Graphic design isn't something I'm good at so I don't have any recommendations here, but I know that I don't like it.

There also seem to be a lot of odd font choices in the application. I would probably stick with one font family for the UI portions.

<comment><USER16> I'm not a specialist in graphic design, but a few issues that appeared to stand out to me, in no particular order:

1\. Whatever the shadowed rectangle is lower left, it looks like an ad that I'm supposed to be sure isn't their content. In other words, it completely doesn't fit with everything else. Its shadow makes it above everything else on the z-index, as if it's the most important thing on the page

2\. Inconsistent padding. Similar things should have similar spaces between them. The whole padding scheme falls apart in the lower left, and the massive difference between vertical and horizontal padding on the tiles makes them look wrong. Also, this is a nitpick but the search button should be aligned with the other icons or farther away from them.

3\. The tiles are too narrow. This is partly caused by too much padding between the tiles, taking up valuable space.

But text

flows

badly if

you

squish

it too

much

The items should have a set width that lets the examples look nice (maybe so that "Beijing's tallest tower" fits on one line, not sure exactly without seeing it) and then have fewer items on one row if the window can't fit them all.

4\. The thumbnails, like you said. If you've got images for titles one can put the text over the image. This is the trickiest of my suggestions to get right. I think it looks cool. Some people hate it. A discussion of ways to do this: [https://css-tricks.com/design-considerations-text-images/](https://css- tricks.com/design-considerations-text-images/)

5\. Color. Color draws attention. Right now my attention is drawn to the thumbnails the floating action button. The rest feels like a mock up that hasn't been colored yet. This seems to use material design, and material design has color palettes. I'd pick one of them and color according to the instructions.

6\. That "Storage" floating action button. Does that mean connect a device? If so: the FAB is for stuff people need to do frequently. If people don't need to connect devices frequently this might be better as a de-emphasized button and a prompt on the first run

But then, I'm a random person on the internet whose never launched anything near this impressive. Feel free to ignore my thoughts OP.

<comment><AUTHOR> @iudqnolq Thanks for your suggestion!

A few problems (padding of those virtual book cover) I have already tried to fix before posting the "SHOW HN" thread. But you have given me a lot of other clue to improve.

Yes, I'm using material design, but at a superficial level, after the initial releasing, I will spend more time at better use the design tool. (eg: lever up color).

The "storage" button is just an entrance of popping up menus. I will change it in the next release version.

Your modest but inspiriting language gives me lots of engergies. Thanks again.

</comment></comment></comment><comment><USER18> _Some webpage deserve to be lasting kept in eBook format_

This is not a valid English sentence. Perhaps you meant "Some webpage _s_ deserve to be _permanantly_ kept in eBook format"?

There's lots of other errors throughout the site that make me suspect English is not your first language; I would suggest finding a native speaker to do an editing pass.

I don't own a Kindle, I just use the app on my phones and tablets, so I am assuming I can't use this since it repeatedly refers to "your e-ink Kindle".

<comment><USER19> "Permanantly"...

What is the name of that law which says people correcting misspellings on the internet are doomed to make typos in their own comments...?

(But I concur that the copy needs reviewing.)

<comment><USER20> Muphry's law [1].

[1] [https://en.wikipedia.org/wiki/Muphry%27s_law](https://en.wikipedia.org/wiki/Muphry%27s_law)</comment></comment></comment>


Why So Few? The Underrepresentation of Women in Technology&Software Development - <AUTHOR> https://www.oclc.org/research/events/2019/051519-underrepresentation-women-technology-software.html <comment><USER2> ... they don't want to give up their neurotypical privilege.</comment>


Network Programming with Go - <AUTHOR> http://jan.newmarch.name/go/ <comment><USER2> I find it funny how he skips an introduction to Go saying there are many such introductions already available but explains networks and the internet in great detail!

</comment><comment><USER3> I really like this book, but what I found most difficult when implementing a website is the authentication part.

How password should be encrypted? How session id should be generated and passed to the user? How session information should be saved? (cookie? file? database? memory?)

Also, I'd be interested in https, from theory to implementation.

<comment><USER4> I understand that your comment is about this book, but I'll go ahead and answer your questions with links to packages (plus I get a chance to plug a few of my own creation :). If you want to learn how they work, reading docs and code is the best exercise. It's not a substitute for the proper book, though, but may turn out to be useful.

 _How password should be encrypted?_

Choose your package:

        go get github.com/dchest/scrypt
        go get code.google.com/p/go.crypto/bcrypt
        go get code.google.com/p/go.crypto/pbkdf2

_How session id should be generated and passed to the user?_

If you mean how you can authenticate logged in users, then you can use this package:

        go get github.com/dchest/authcookie

_How session information should be saved? (cookie? file? database? memory?)_

Up to you, but generally it's better to avoid cookies for storing anything other than IDs. There are a few packages for "sessions" like in PHP, but I don't remember their names.

One more important question to add:

 _How do I protect against XSRF attacks?_

        go get code.google.com/p/xsrftoken

You can read documentation for these packages here: <http://go.pkgdoc.org/>

As for HTTPS, it's a complicated thing. Pick any good book on it, then apply your knowledge to the standard package crypto/tls (<http://golang.org/pkg/crypto/tls/>).

<comment><USER3> Wow, Thank you very much!

</comment></comment></comment><comment><USER5> Aside from being interesting and a new thing to learn, is Go used extensively in the professional world?

For network programming I've often used Python + Twisted + ZMQ, what are the most commonly used alternatives?

<comment><USER6> You might find that the blocking style of Go networking code is far less mind bending than using twisted.

<comment><USER7> Yes, and the beautiful thing about it, is that the blocking calls you make are actually implemented as evented IO. This is great when you have a large number of goroutines; it keeps it very fast!

<comment><USER8> Wait, what? Do you have any references for that? My impression was that Go creates new threads for new Goroutines when the current ones are blocked. Is that not how it works?

<comment><USER6> The Go runtime creates new threads to run goroutines when a thread is blocked making a syscall. The net package avoids having too many threads blocking on syscalls by using epoll/kqueue etc. for socket I/O.

</comment></comment></comment></comment></comment><comment><USER9> Is there any way you can control the number of native threads in go ? I wrote a small go example that used net/smtp to bombard myself with emails. Just a loop that fired off a goroutine, which each sent an email.

It was quite disturbing that firing off several thousand goroutines resulted in several thousand native threads - resulting the system trashing. If I inserted a very small pause between creating the go routines, this did not occur and just 1 or 2 native threads were created. I tried the runtime.GOMAXPROCS, to no awail. Is there any way of controlling this kind of behavior ?

<comment><USER6> It's likely this is related to DNS lookups. Doing a lookup on a modern operating system requires calling in to some C library. The call in to the C code means that the thread can no longer be used to schedule goroutines, the runtime doesn't know how long the C call will take so it creates a new thread to keep running goroutines. For calls in to C that are very quick this can lead to a lot of thread creation.

You can do one of:

1\. limit thread creation by using your operating systems limiting features. eg ulimit

2\. rebuild the standard lib with DISABLE_CGO=1 to avoid the calls in to C if that's possible in your environment.

3\. batch all your dns lookups in to a single goroutine.

4\. make changes to the operating system so provide async dns lookups.

<comment><USER9> Thanks, I'll do some testing with these points later on. Though it does sound like go should batch up gethostbyname/getaddrinfo C calls on one or a few threads. Having DNS lookups be the cause of thousands of threads to be created, up till the point where go routines fails is rather ridiculous for a language that's supposed to be good at concurrency imho.

<comment><USER6> Batching the C calls means that you all lookups are delayed by other lookups. This isn't very good for concurrency especially since it's reliant on network traffic. If you had a few lookups in the queue, you could end up having goroutines waiting a few seconds or for lots of lookups this could balloon out to minutes for a lookup. This is the trade off. In general most programs aren't making thousands of concurrent DNS lookups.

</comment></comment></comment></comment><comment><USER10> Ever notice how all Go tutorials are just about Web servers somehow?

</comment><comment><USER11> It seems like when trading C for Go I'll be trading a few more lines of code for a bunch of black magic and a new syntax. Not sure if want.

<comment><USER6> It's easy to forget that the black magic that runs C is commonly confused with just being an operating system.</comment></comment>


How to ask for reviews without feeling icky about it - <AUTHOR> https://m.signalvnoise.com/getting-from-%EF%B8%8F-%EF%B8%8F-to-%EF%B8%8F-%EF%B8%8F-%EF%B8%8F-%EF%B8%8F-%EF%B8%8F-c65cc3bb7cb1#.rgrwe5cnw <comment><USER2> The best way to ask for reviews is to use my Review Buddy service:

[https://mikeash.com/review_buddy.html](https://mikeash.com/review_buddy.html)

All you have to do is enter your app's bundle identifier, and then my system takes care of prompting the user for reviews at appropriate times. It's totally free and you don't even have to integrate an SDK, it's completely automatic.

<comment><USER3> Hi, can you briefly explain how this works? I didn't find any explanation on the website.

<comment><USER2> It's a placebo. It's never appropriate to prompt your users for a review, so it can accomplish its task of asking users when appropriate without doing anything at all.

</comment></comment></comment><comment><USER4> It would be nice if this was an OS feature instead of implemented differently by every app developer. That way it could also be disabled system-wide with a single setting. The OS could either show a nice dialog on update as shown in the article, or show it after the user has launched the app a certain number of times. Rating good apps that people use frequently is a benefit to all users.

</comment><comment><USER5> > It catches the customer at a good time because we just gave them something > new.

Now ask for a review after a crash. This is just asking "we introduced new stuff, you like the idea?" when really progress comes from asking "you've now been using X that we introduced Y ago, how's it working for you?"

</comment><comment><USER6> For the products that are regularly used by me or my team, I love reading about new features. In fact I've subscribed to the product update emails of our most important software.

This because often, new features means increased efficiency or new capabilities for the team and I. And I love it when that happens.

If they've developed a feature that I wanted for sometime or solves a current problem, I'm almost certain to rate them highly.

</comment><comment><USER7> When an app asks for a review, I typically go and leave a one star review.

<comment><USER8> That's ridiculous, given 99.95% of users will never leave a review unless prompted. That's like saying: I love your product, but if you DARE ask me to leave a review, I'm going to be a hater. That makes absolutely no sense to me.

<comment><USER2> If an app interrupts my workflow for no benefit, that is a _legitimate_ negative point against it. If it does this repeatedly (many apps nag a lot) then that can substantially impact its usability.

</comment></comment></comment><comment><USER9> Interesting to read all the complaints about these types of popups. I also dislike those. But what's clear from this post is that most people are actually happy about them or at least that they don't result in lots of negative reviews but rather lots of positive ones.

I love it when an a/b test or some other type of experiment blows in the face of our personal bias.

<comment><USER10> Lots of positive reviews doesn't necessarily mean most people are happy. It could be that the unhappy people don't click the "leave a review" button, or that they're slightly unhappy but not enough to leave a review. If you think about it, it's actually quite hard to tell for sure whether something makes people happy or not.

</comment></comment><comment><USER11> When I see the what's new screen I always visually scan for the dismiss button, which has now been changed to no thanks. I don't want to see a what's new menu, I don't want it longer, I want to open the app do what it was I came for and get on with whatever I was doing.

<comment><USER12> True, but that reading 4 bullet points takes ~5 seconds and you might have a new feature which really helps you and you might miss it otherwise.

<comment><USER10> If you use an app infrequently enough that it updates between each use, you'll see an alert every time you open the app! 5 seconds isn't that much, but many 5-second inconveniences add up. Plus, if you have to read a bunch of text to understand the features of your app, most people are going to miss the features anyway.

<comment><USER13> If you use an app infrequently enough that it updates between each use, then it isn't going to be adding up to much.

It may well be the major thing you remember about the app, though.

</comment></comment></comment></comment><comment><USER14> These review/rating popups really annoy me, though the mechanism they're using in this post might not be as bad.

Can you imagine if websites nagged you in this same way? Why do we think it's an acceptable user experience to nag in apps?

<comment><USER15> We don't, but it translates into serious increases in downloads if done right. It's pretty hard to ignore, though I don't do that in my current apps.

One area where this can be addressed is at the App Store level; change the incentives so writings reviews aren't so important. If the OS is collecting how much people use an app, for instance, why not more highly rank apps in the App Store that demonstrate consistently high use?</comment></comment>


Teach Testing First - <AUTHOR> https://smalldata.tech/blog/2019/02/09/teach-testing-first <comment><USER2> I've been talking (and tweeting) a lot about exactly this topic: Teach Testing First. There is _no_ reason this can't be done, and, in fact, it's how I'm teaching a number of folks how to test and code in Java.</comment>


A simple and small vimrc - <AUTHOR> https://github.com/shiyanhui/simrc <comment><USER2> This is neither simple nor small… and full of technical errors and bad practices.

See [https://www.reddit.com/r/vim/comments/92bbzc/a_simple_and_sm...](https://www.reddit.com/r/vim/comments/92bbzc/a_simple_and_small_vimrc/e34g07t/)</comment>


Elon's Musk résumé all on one page - <AUTHOR> http://www.businessinsider.com/elons-musk-resume-all-on-one-page-2016-4 <comment><USER2> That's an awful example of a resume. The bar charts on the right mean nothing.</comment>


New York inmate's golf drawings lead to exoneration in murder - <AUTHOR> https://www.bbc.co.uk/news/world-us-canada-45582610 <comment><USER2> The various Innocence Projects across the US are full of absolute heroes. The number of innocent people currently serving time in US jails is tragic and scary.

Prosecutors and judges should be held more accountable for malpractice. This man lost his life when the facts were in his favor. Someone should be punished for this injustice.

Even worse, lots of states won't even compensate the wrongly convicted for taking their lives from them.

<comment><USER3> One of the many problematic things about criminal justice in the United States is this:

Many prosecutors and police officers feel that, even if you weren't guilty of _this crime_ , you were probably guilty of _something_ , the law just "caught up with you." so if a plausible case can be made against you they'll do it. And it's important to understand this isn't merely a cynical view held by these people: it's a strongly held conviction. Had Mr. Dixon been thoroughly exonerated at his original hearing, I can assure you both the arresting officer and prosecutor involved would be absolutely furious that he "got away with it"

Attempts to curtail this behavior are met with endless concern-trolling and belly-aching from DA and police departments, claiming it lets criminals roam free because they use these laws (civil liberties) to "cheat the system".

They are gas-lighting you, and don't want you to ask: how are a bunch of impoverished teens, who never completed high school, and likely never left a 6 block radius of where they grew up, somehow out-maneuvering politically powerful DAs with well-educated prosecutors backed up by well-funded militarized police departments? The constitution is powerful, but it's not _that_ powerful.

<comment><USER4> There are more people commiting crimes than people investigating crimes. The system is so log jammed that if everyone took a trial rather than a plea deal, no one would ever see a court date for years.

In this condition its easy to see resources allocated to high profile cases which impoverished, uneducated teenagers are not.

So a DA can believe someone is guilty, but also that there is unlikely to get enough resources to investigate and prove it.

Now personally I believe the solution is to be more lax on crime, till the numbers improve but thats another topic.

<comment><USER5> _Prosecutors had omitted to reveal to Mr Dixon 's defence attorney that a gunpowder test on his client's clothes had come back negative._

Sounds like they knew he wasn't guilty, but didn't care?

</comment></comment></comment></comment><comment><USER6> >Prosecutors had omitted to reveal to Mr Dixon's defence attorney that a gunpowder test on his client's clothes had come back negative.

>Perhaps even more egregiously, another man, Lamarr Scott, admitted to local media only days after the murder that he shot Torriano Jackson. According to the Buffalo News, prosecutors conceded that Scott had been admitting his guilt in the case for a long time.

What kind of person sends an innocent man to prison just to score a win in a case? They should face some kind of repercussion, a good start would be an audit of all their cases looking for similar behavior. Of course that isn't practical, maybe a "strike" system where you would be suspended after x cases of unethical behavior.

<comment><USER7> It's also why the death penalty is wrong.

<comment><USER8> I've gotta agree. I'm morally OK with the death penalty for certain crimes, not so much for punishment or deterrence but for the same reasons you'd put down a rabid dog. But when prosecutorial misbehavior comes out in the news so often, I couldn't abide sentencing someone today unless there was overwhelming objective proof that it was actually them.

<comment> village-idiot Pretty much where I'm at too. The risk of a dodgy prosecution resulting in an innocent person being executed is way too high.

<comment><USER7> Yep, and it has happened in the past, and as long as we have it, it will in the future.

</comment></comment></comment></comment></comment><comment><USER9> Prosecutors hid exculpatory evidence from the defense team. That's a recurring theme in cases like these.

The prosecutors will not face any real consequences for ruining an innocent man's life. That's also a recurring theme.

<comment><USER10> For foreigners (like me) this episode of last week tonight[1] is quite useful to understand the role and possible abuses of prosecutors.

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

<comment><USER11> Except its not really.

<comment><USER10> Well it felt that way, and it seems like a show of good reputation. But I would be really happy to learn from more trustful sources! Care to share some or your experience?

<comment><USER12> It is mostly correct, but fails to elaborate on the culture of prosecutors leading to these kinds of results, instead painting them as "prosecutors suck".

[http://reason.com/archives/2016/06/23/confessions-of-an- ex-p...](http://reason.com/archives/2016/06/23/confessions-of-an-ex- prosecutor) (previously discussed at [https://news.ycombinator.com/item?id=17594612](https://news.ycombinator.com/item?id=17594612))

<comment><USER13> It's your 3 minutes of hate. Your not supposed to emphasize with them.

</comment></comment></comment></comment></comment></comment><comment><USER14> "He acknowledged being at the crime scene, but said he was at a nearby shop buying beer when the gunshots rang out."

#1 proof that you should never ever talk to the police or confess to literally anything. Even saying something that is true and innocent can land you in jail with a 38-to-life sentence.

<comment><USER15> Agree you shouldn't talk, but if you talk you should probably tell the truth. If they ask if you were at the crime scene and you say no, and they find you actually were there, they'll consider your lying evidence of your guilt.

Not quite the same thing, but Nick Yarris spent 21 years on death row [1] because he was (unjustly) facing life in prison for an unrelated offense and thought he could maybe be released if he lied about knowing information about a murder. When they found out his information was wrong, they charged him with the murder and convicted him. He was exonerated based on DNA evidence.

So, yeah. If you tell the truth, you might be considered guilty, and if you lie, you might be considered guilty. The best option is to say nothing.

[1] [https://en.wikipedia.org/wiki/Nick_Yarris](https://en.wikipedia.org/wiki/Nick_Yarris)

<comment><USER16> I think this presentation about never talking to the police is relevant:

[https://www.youtube.com/watch?v=d-7o9xYp7eE](https://www.youtube.com/watch?v=d-7o9xYp7eE)

Pretty much don't say anything, true or otherwise.

<comment><USER17> This is easy to say before you've been kidnapped. A bit harder to stick to, especially if you see no representation on the horizon, and think you can avoid escalating the situation.

You should of course still watch this video and follow its advice. Just don't let it preclude you from having empathy for the people who haven't.

</comment></comment></comment></comment><comment><USER18> It's fascinating to read the original 2012 Golf Digest article, which has a subhed of "Golf Saved My Life [0]. But he didn't know at the time that the Golf Digest profile would lead to new interest in his case, just that it gave him psychological resolve. This is an excerpt in which he describes being in the same prison as the man who was actually responsible for the murder:

> _I now see LaMarr regularly. One year after I was convicted, LaMarr shot a > teenager in the face after an armed robbery and made him a quadriplegic. I > choose not to hold a grudge against LaMarr because psychologically, it would > kill my spirit. LaMarr 's eligible for parole in 2018; I'm not up until > 2030._

More than 3/4 of the Golf Digest article is about the details of Dixon's case. According to the new story [1] (which should probably be the URL for this submission, rather than the BBC recap), GD seems to have gotten interested because of Dixon's drawings first, and then became even more interested when they heard about the details of the case. Kudos to them for investigating it.

[0] [https://www.golfdigest.com/story/golf-saved-my-life- valentin...](https://www.golfdigest.com/story/golf-saved-my-life-valentino- dixon)

[1] [https://www.golfdigest.com/story/for-valentino-dixon-a- wrong...](https://www.golfdigest.com/story/for-valentino-dixon-a-wrong- righted-murder-charge-vacated-by-court-after-serving-27-years-in-prison)

</comment><comment><USER19> It's crazy to me how often these kind of stories come out of the US. It just shouldn't happen that often that someone is convicted of murder on weak evidence. The number of prisoners per capita seems to indicate that it's not just anecdotes. I can't help but feel that the US simply doesn't have a proper functioning justice system.

<comment><USER14> The biggest issue is the whole jury system - I don't understand how being judged by 12 people with no formal law education is considered a working or fair justice system.

<comment><USER20> Anything other than random citizens would necessitate a full time profession of juror and would thus render members of this profession employees of the state in some capacity. This violates the idea of an independent judiciary.

Furthermore a jury of your peers is at least as good as the society around it. A jury of self selecting professionals is almost certainly worse. How many people would choose to join the jury profession so they can enact their own personal bullying by voting guilty on everyone? How many people become small town cops because they like having a gun and barking orders?

Furthermore any bias in a juror gets averaged over 12 and affects at most one trial.

Furthermore prosecution and defense get to cross examine and dismiss jurors as part of the selection process. If you want a generally well educated jury you can get one. Ask your trial lawyer which jury is right for you!

Furthermore it only takes one of the 12 to stop a miscarriage of justice.

Furthermore in the US everyone is at least somewhat indoctrinated with an understanding of what a jury is and a respect for executing jury duty faithfully. You have a pretty good shot of getting at least one person on the jury that won't vote guilty instantly so they can still make the baseball game latter that day.

Finally, a jury doesn't need law education. Their job is to judge the facts. They are informed of the definitions of the crime, and the evidence, and must reach a verdict of yes he did this or no he did not. Upon rendering a guilty verdict, the actual law part of the law is executed by the judge.

<comment><USER21> > Anything other than random citizens would necessitate a full time profession > of juror and would thus render members of this profession employees of the > state in some capacity.

Why have jurors at all ? Over here in the Netherlands people are judged by ... judges (what's in a name).

<comment><USER22> There was a case in the US where two judges were getting kickbacks for sending kids to a specific detention center for offenses as trivial as mocking an assistant principal on Myspace or trespassing in a vacant building. There's no jury in a juvenile court anyway but this is a case of a judge using their position of power to line their pockets at the expense of the futures of those kids. Not every judge is a good person but at least your lawyer can help pick the jury for you so some of the jurors might be more understanding of your accused crime and the circumstances.

<comment><USER23> I think that corrupt judges is a separate issue to whether a judge employed by the state cam be impartial.

It's also possible to bribe jurors to get off a conviction. Possibly easier than bribing a judge.

All classes of people are corruptible.

<comment><USER24> You'd have to bribe 12 jurors to guarantee a conviction for a single case. Bribe one judge, and you control hundreds of cases.

<comment><USER25> This leads to an obvious question: should anyone have the right to know who the jury is?

After all, if you don't know who they are, you can't bribe them or blackmail them. Same argument applies to the judge.

One-way-glass might be a work of fiction, but video cameras are not.

<comment><USER26> How do you guarantee a trial by jury, if you don't have to prove to the defendant that the jury exists?

<comment><USER27> How do you guarantee a trial by jury, if an entire jury could be paid actors?

It's a bit silly to worry about that level of conspiracy.

But even if it weren't silly, there are easy answers. An oversight board, or revealing the jurors after the case is decided, or revealing the entire juror pool of 50 some-odd people, etc.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER28> The system seriously failed in this case. The actual killer confessed just days after the crime and repeatedly over the years. It wasn't even a mystery who did it.

</comment><comment><USER29> >> [prosecutors] also said he was an "up-and-coming drug dealer" in Buffalo at the time of his arrest.

"He's a bad guy, so he deserved to be in jail anyway".

<comment><USER30> This seems to be a common rationalization from prosecutors and police. What they fail to realize is that falsely imprisoning even a 'bad guy' undermines the whole system. It has led us to the point where no one should ever speak to the police. A cycle that makes it even harder for police do properly do their job.

<comment><USER31> The real problem is that it also seems to be a common rationalization from the jury.

</comment></comment></comment><comment><USER32> A lot of people assume it's "evil people" that are responsible for this stuff. Evil people can't hold a candle to the damage done by normal people rationalizing bad behavior as good.

</comment><comment><USER33> So they release the guy, but smear him as an "up-and-coming drug dealer" when he was a kid, 27 years earlier.

<comment><USER34> Here's a quote from Dixon himself in the Golf Digest article:

> I started dating a girl whose brothers were drug dealers, and before long I > was in it, too. It's no excuse. It was what you did in my neighborhood if > you wanted to make money. I became a mid-level cocaine dealer and pulled in > enough to drive flashy cars and cover friends, but not much else. I rode > with a weapon, same as everybody.

<comment><USER33> Yeah, but that's not the point. This person sold a plant derivative to willing buyers; the state locked him in a cage for 27 years. Both are obviously illegal, but wildly different proportionally.

And yet the latter, when finally made to acknowledge their mistake, pulls this "up and coming drug dealer" thing out as their excuse?

</comment></comment></comment><comment><USER35> It shouldn't take having a special talent in art to get a fair hearing.

</comment><comment><USER36> > prosecutors say he did provide the murder weapon

I get that it's not fashionable to defend police and prosecutors in this zeitgeist, but this sure seems like it's more complicated than a simple frame job. If you don't technically pull the trigger but your friend does while you go next door to pick up a six pack and an alibi, are you really not guilty?

<comment><USER37> Prosecutors say a lot of things.

For instance, they said he shot the victim.

Where is the _evidence_ that he shot the victim?

Where is the _evidence_ that he provided the weapon?

These are the questions we should remain focused on when trying to ascertain guilt or innocence. Not what the prosecutor said. (Prosecutors have in-built incentives to persuade you to one side.) Nor, indeed, should we even focus too much on what the defendant said. (He could have been tortured, or he could just be lying.)

Do you have evidence or not? If not, gtfo.

Now in this case, the prosecutor _hid_ evidence. And that's what complicates everything. When the prosecutors are willing to go to those lengths to cover their untruths, then there is little that can be done to check that lack of integrity given the structure of the current system. That's certainly a problem. But the _idea_ is that if we focus on _evidence_ we won't go wrong.

<comment><USER36> The prosecution did their job, supplied evidence, and got their conviction. If anyone failed, it's the defense.

<comment><USER37> That's a dangerous road to go down when you imply that the prosecutor's job is to hide exculpatory evidence from the court.

I _definitely_ can't travel that road with you.

<comment><USER36> That's not what I'm saying. And you're right to correct me. The prosecution's job included providing that evidence, and they failed.

</comment></comment></comment></comment></comment><comment><USER38> What I don't get is this line, "But despite Mr Dixon's exoneration, prosecutors say he did provide the murder weapon, which they described as a machine gun."

So he was at the store buying beer, and the other guy used his gun? So at most he is guilty of owning an illegal firearm, or automatic weapon?

<comment><USER36> Or he concocted a scheme where his friend, with no motive, would perform the murder while he had an alibi.

<comment><USER38> I am not questioning that what I presented is unbelievable; I am trying to confirm that the gun was indeed his. Who admitted it was his gun? It's obviously illegal, and the other guy confessed to the crime soon after. Did the shooter say it was the other guy's gun?

<comment><USER36> > He acknowledged being at the crime scene, but said he was at a nearby shop > buying beer when the gunshots rang out.

> Mr Dixon said multiple witnesses could have testified he did not fire the > gun.

Sounds like some weasely words to me. He was clearly involved in the crime even if he didn't pull the trigger.

<comment><USER38> Whether he was an up and coming drug dealer, or not, or had possession of an illegal firearm, he didn't deserve to be incarcerated for that many years if he didn't pull the trigger. I wonder if he had a relationship to the victim or a vendetta of some sort as well. There was mention it was over a dispute about a girl.

</comment></comment></comment></comment></comment><comment><USER39> A few observations: 1) This man, by all accounts, is free only because he has an extraordinary talent. It's not that his case for innocence was stronger than any specific other inmate's. It's that his talent attracted the attention of people that could work for his release. How many people without artistic talent are nonetheless languishing unjustly in prison?

2) Bureaucracies where the individual cogs (here the prosecutors) have no skin in the game, will always tend towards inhumane outcomes. They don't even need to hold the power of life and death over citizens for this to be the case. Prosecutors face no consequences for wrongly incarcerating people, so naturally, they tend to be overly aggressive in prosecutions.

When designing government agencies in the future, citizens should first figure out how to make sure the bureaucrats have skin in the game before they empower them. Once the bureaucrats are given power, they become petty tyrants. It's just human nature.

</comment><comment><USER40> > Mr Dixon, 48, had maintained his innocence during 27 years behind bars for a > shooting in Buffalo, New York.

> Mr Dixon had served nearly two decades at a notorious prison in upstate New > York when his artistic flair attracted the notice of correctional > authorities.

Isn't 27 years closer to three decades than two...

<comment><USER41> > sn't 27 years closer to three decades than two...

The article is a little oddly worded at that point, but it clarifies later on.

After he had been in jail for 19 years the warden noticed his artistic skills and asked him to draw a picture of a hole at Augusta.

It was after that that the review of his case started. It took another eight years for that review to result in an overturn of the conviction.

</comment></comment><comment><USER42> The police in this country are absolutely savage. Someone I know was in a major US city this week and saw a police cruiser rev its engine, drive onto the sidewalk and intentionally hit an unarmed man on a bicycle, head on at high speed. The power of that impact and sound of snapping bones was something which will stay in my friend's head forever. There was blood everywhere. My friend was sure the man was dead, although evidently he somehow survived. The cop was white and he's still on active duty. No investigation was made. The man on the bicycle was black. The police department issued a statement stating that it was the bicycle that hit the cruiser. This is America.

<comment><USER43> This reads like an urban legend about racist white cops. How do you know this actually happened?

<comment><USER42> Because the person called me, shaking and described what they just saw. The car was half on, half off the curb, after the collision. The cop definitely goosed the gas right before the collision. It was the indiana story. Everyone on the scene was sure he was dead. The exact words my friend used: "I just saw someone die".

What's really shocking is hearing the police department issue flat out lies about what happened.

Edit: after I wrote the original post, due to the fact that somebody caught it on camera it looks like there will be an investigation after all- I'm glad.

</comment></comment></comment><comment><USER44> Prosecutors don't seek justice, they just want to lock up as many of what they perceive as bad guys, and a black man fits their stereotype. They clearly knew that this guy wasn't guilty of murder since somebody else confessed to the murder yet they let the innocent guy behind bars probably thinking "i got no hard feelings, that guy would have ended up killing someone one day". I sometimes wonder how these people sleep at night.

</comment><comment><USER45> Wouldn't it be nice if everybody was given the benefit of doubt?

<comment><USER46> You know how often I watch "Live PD" and believe the guy (or girl) that got pulled over, only to find out that once the K9 arrives, they had pounds of individually-packaged drugs and guns in their vehicle.

<comment><USER47> how often do they show car stops that result in no charge on "Live PD"?

</comment></comment></comment><comment><USER48> re: American Justice System. I recently had to explain to a Chinese coworker of mine how in the U.S you can be held in jail for years pending trial because you can't afford to post bail. He was legit blown away and had no idea how that was possible. Apparently in China they have a couple of days to present evidence from the numerous CCTV cameras in the country or they must release you. Mechanisms like cash bail and these numerous wrongful conviction stories really highlight how the "land of the free" is anything but.

<comment><USER49> Did you ask him how he felt about secret trials in China against political opponents or made up evidence that results in execution because they are an "enemy of the people"?

<comment><USER48> I questioned the high conviction rates, but I think that is a sensitive topic for him as he often says U.S news of what's going on in China is misleading.

</comment></comment></comment><comment><USER50> We seems fine with a future where AI becomes integrated into our legal system. Here is an excellent opportunity for AI to identify potential innocent people.

<comment><USER51> How? What could AI possibly have done here?

<comment><USER52> I'd assume it should have less bias on any given case and we'd hope cases like this would be flagged by that system somehow. However, completely unbiased machine learning seems like something as hard to achieve as being completely unbiased ourselves.

<comment><USER53> AI tends to have both the biases of the programmers plus various unknown biases that it creates itself from the input data.

"The evidence photos are all on bright sunny days and contain blue rectangular objects in the top left, probably guilty."

</comment></comment></comment></comment><comment><USER54> I mean, great he got out. But how is everyone involved not being punished? Someone else admitted to the murder 20 years ago!!

</comment><comment><USER55> The title is a bit misleading. Expected the drawings to be more directly responsible for the exoneration.

Still a very interesting story.

<comment><USER43> Yeah, this is kind of a clickbait title.

</comment></comment><comment><USER56> Same inmate, different story: [https://www.georgetown.edu/news/georgetown- students-help-fre...](https://www.georgetown.edu/news/georgetown-students- help-free-prisoner-wrongfully-convicted-of-murder)

</comment><comment><USER57> "But despite Mr Dixon's exoneration, prosecutors say he did provide the murder weapon, which they described as a machine gun.They also said he was an 'up- and-coming drug dealer' in Buffalo at the time of his arrest."

Welp.

<comment><USER58> > Welp.

I don't understand what you're trying to communicate with that.

</comment></comment><comment><USER59> I wonder how he'd have fared if he'd drawn anything other than gold courses.

</comment><comment><USER60> You can partially thank the media for this. They like to sway opinion on issues for profit. Look at all the cartoons and TV shows and movies from the 80's and 90's demonizing Arabs to make way for the endless middle east wars.

The endless stream of crime dramas that make it clear the police never do wrong and if you make it to a trial you are certainly guilty. We have a prison industry in this country that is predatory to everyone but especially the poorer uneducated classes, and crime dramas are their commercials.

<comment><USER61> >> The endless stream of crime dramas that make it clear the police never do wrong and if you make it to a trial you are certainly guilty.

I've been watching "The Good Wife" seasons 1 and 2 recently. The show deals with people in private law firms, government prosecuting agencies, law enforcement, and random folks caught up in the legal process. The seasons are set in Chicago during the post-2008-crash time frame, so there's a lot of financial pressure all around.

The show depicts well the financial and political game, the skewed incentives, and deal-making, the disregard for truth, racial and economic biases, how law enforcement often actually "does wrong". I'm sure the show's not very realistic, but it's fun, it paints almost no one in good light, and exposes the double-dealing and back-stabbing up and down the stack.

<comment><USER62> Yeah, I'm not buying the whole "crime dramas portray cops as infallible" argument. Every cop show I've ever watched shows the police regularly bending the rules or otherwise being shitty at their jobs. If there wasn't controversy in the plot it wouldn't be entertaining. Saying crime dramas cause failures in our legal system is like saying violent video games cause mass shootings.

<comment><USER60> That is called manufacturing consent. How often do police get in trouble for bending or outright breaking the rules... that behavior is normalized in media, which normalizes it in reality.

</comment></comment></comment></comment><comment><USER63> Seems like an awfully inefficient system. They should replace the trials with talent shows, and convict whoever has the least interesting entry.</comment>


Anyone in need of a Python open source contributor? - <AUTHOR> Looking for an interesting Python project to contribute. <comment><USER2> Celery needs help badly. I'm one of the maintainers and we're swamped with issues to triage, bugs to fix etc.</comment>


Is Google backing off from open standards? - <AUTHOR>

Some troubling developments:<p>* XMPP: http://www.geek.com/articles/mobile/google-expected-to-unify-chat-under-the-name-babble-20130318/<p>* CalDAV: http://googleblog.blogspot.ca/2013/03/a-second-spring-of-cleaning.html <comment><USER2> Okay, lets consider those: XMPP: Undisclosed sources tell an internet news site that Google is consolidating existing services, some of which are XMPP based, into a new centralized service. News site asserts that Google's shutting off of inboud XMPP subscription requests (which Google announced was an emergency move to control spam, after asking other XMPP operators for alternatives and still openly seeking alternatives that allow federation and effectively control) is part of the plan for this new service to be a walled garden that you can only use as Google wants. No mention is made of Google's public explanations for the reasons for the shutdown of external access in the article, which is either intentionally misleading or a sign that the author just hasn't done their homework.

Aside from the troubling things it says about the quality of web-based journalism, I don't see anything troubling (or even, particularly credible) here.

CalDAV: Google has deprecated their _current_ (incomplete) always-labelled-as- experimental CalDAV API for Google Calendar with 6 months of lead time before deactivation, announced that the new version of the CalDAV API support will initially, at least, be whitelist-only with an application process, and announced that they've already reached agreements the operators that provide 98% of CalDAV traffic to Google Calendar for continued access.

So, continued -- probably even improved -- support for an open standard, but, at least temporarily, less-open access to the API. Might be troubling from the perspective of unrestricted API-based access to Google services, but doesn't seem to be troubling from the perspective of Google's commitment to open standards.

<comment><AUTHOR> Let's hope.

<comment><USER2> Google's temporary XMPP limitation (which wasn't a complete deactivation of external interaction) via whitelisting is expected, per Google's announcement, to be replaced with a new antispam solution that allows federated interaction without whitisting next week.

(see [http://mail.jabber.org/pipermail/operators/2013-March/001635...](http://mail.jabber.org/pipermail/operators/2013-March/001635.html))

So, the idea that it limiting XMPP interaction was secretly part of a master plan to move Google Talk into a walled garden with no off-Google's-system interaction, which was wildly unsupported from the beginning, is looking less credible.

<comment><AUTHOR> Thanks for the pointer. Cal(Card)DAV issue still looks weird though. Why does Google need to make their own proprietary API instead of just using Cal(Card)DAV?

</comment></comment></comment></comment><comment><USER3> Google was never open.

<comment><AUTHOR> Google was never completely open. But they were supportive of open standards before. This is a serious trend reversal.</comment></comment>


Estimating G+ User Activity - <AUTHOR> https://ello.co/dredmorbius/post/nAya9WqdemIoVuVWVOYQUQ <comment><USER2> According to Google [1] "300 million people active in just the stream" which means that either: 1) author is wrong, 2) Google is considering the fact of being logged into G+ and, say, using Google search counts, or 3) 98% of activity is made private.

I bet it's a mix of all three with emphasis on something 2-ish. ;]

[1] [http://googleblog.blogspot.com/2013/10/google-hangouts- and-p...](http://googleblog.blogspot.com/2013/10/google-hangouts-and-photos- save-some.html)</comment>


Windows 7 is nice, but it trashed grub - <AUTHOR> http://weblog.infoworld.com/stratdev/archives/2009/02/windows_7_is_ni.html

<comment><USER2> I haven't used windows in a few years, but after clicking through to that article and looking at the screenshot my instant response to seeing the disk manager was _shudder_.

Does Windows 7 really still manage disks using the same highly broken and unintuitive interface it used 9 years ago?</comment>


Kotlin/Native v0.6 is Here - <AUTHOR> https://blog.jetbrains.com/kotlin/2018/02/kotlinnative-v0-6-is-here/? <comment><USER2> I have used Kotlin Native a good bit now, and it feels quite natural and easy to use. FFI with nullable pointers fits quite well with the language's compile time null checks. I found it much easier to use than Scala Native, especially as a Windows dev. I am a bit sad they chose CLion as their IDE, but I understand why.

<comment><USER3> I really want to like CLion (it's pretty good, honestly) except I cannot stand CMake as a build system. Being able to use Kotlin Native with it sounds quite nice, because then I don't have to deal with CMake. It's a pretty solid IDE.

<comment><USER4> Is there a better alternative to CMake? I find its syntax painful and inconsistent, but once a project is configured, it works reasonably well for producing cross-platform builds.

<comment><USER3> Ostensibly there are dozens, since it feels like everyone makes their own….

Honestly most of the time I use autotools. I hate autotools, but it breaks less often and is usually easier to fix when it does. CMake will occasionally just refuse to find dependencies or will generate bad makefiles for me on less-common OSes like QNX and even on the BSDs.

I did use Premake for a time which is basically like CMake with less awful syntax and doesn't pollute all your subdirectories with files. Don't expect it to work on OSes other than Windows/Mac/common Linuxes though.

</comment></comment></comment></comment><comment><USER5> I heard Dart is also going native in Dart 2.0 I am not sure I really understand the trend

The two most popular language (in the job market at least) are Java and C#

It is weird, because Dart and Kotlin, are targeting being multi-platform, and the historical solution, was .. building a language that compile to byte code for a virtual machine

But now the trend seem to have changed Now we have language, that compile to Javascript, webassembly, even C

And this is seen as an improvement

And DSLs were once very popular, I think this new trend of new languages that compile to everything, also goes againts building and using DSLs

I am still a believer in using different languages for different levels (Ousterhout's dichotomy), but it will be interesting to see, how this goes

<comment><USER6> Simple, it's Apple's stupid App Store policies prohibiting JIT compilers.

<comment><USER7> I wouldn't call those policies "stupid", both from a security (a JIT compiler means you can't trust NX bits) and a battery-life/performance standpoint.

<comment><USER6> The security argument is bogus. The benefit over W^X is miniscule. The battery life argument is even more bogus, as JITs are likely to be faster for dynamic languages.

<comment><USER7> The benefit over W^X is that they already have it in place and usable.

A JIT, full-stop, is _going_ to consume more battery in the general-purpose mobile case than compiled code will. Break-even points on performance certainly exist but mobile applications don't tend to run for that long. You might be okay with that tradeoff--and it is not an unreasonable one--but Apple does tend to prioritize battery life and performance over developer happiness on their mobile platform. And JIT and garbage collection are both red flags for iOS according to the people I know who've worked on the platform from a performance and a battery-life perspective.

"But dynamic languages"\--Apple doesn't seem to _care_ about dynamic languages, do they? Aside from JavaScript, which uses their own, tested, internally blessed, JavaScript runtime. Developers might get frothy about that --but iOS is where the users who actually pay for things are.</comment></comment></comment></comment></comment>


HeathGoogle Series: When Stress Becomes Stressed Out - <AUTHOR> http://www.youtube.com/watch?v=MVOm9TwM19A

<comment><AUTHOR> I know this is not the typical submission, but having just finished watching the video, I think this is something a lot of us here should watch. It is a bit long at at 43 minutes (who in a day like today has time for a 43 minute video, right?), but it's worth it.

Having been burned out for the last couple of months (something that's finally subsiding), understanding and dealing with stress is something I really need to do better. I hope this helps a few of you.

</comment><comment><USER2> Sadly, can't get past the horrendous sound quality… :(</comment>


Rust in 2017: what we achieved - <AUTHOR> https://blog.rust-lang.org/2017/12/21/rust-in-2017.html <comment><USER3> I've never written a single line of Rust. But I try to keep up on it since it's one of the most interesting and ambitious languages to come along in a long time. And I will say this, I think the community is doing a great job of being transparent and making it possible to follow along on the side. If it's anywhere near as well-run on the inside as it seems to from the outside, then I think it will serve as a poster child of how to develop a language in the open and build up a community around it.

</comment><comment><USER4> The first thing I did when my holiday break started was to configure Visual Studio Code with RLS and work through the examples in the O'Reilly Programming Rust book. There are some rough edges, but it's amazing how far the tooling has come.

<comment><USER5> Can you use a debugger yet? This was a major roadblock for me when I tried to learn rust. (other than lldb)

<comment><USER6> LLDB works well enough to sometimes be useful. I've used it with the VS Code native debugger extension [1].

I've encountered a couple annoyances:

A. Using rustc to link somehow removes debugging information from static libraries I wrote in assembly [2]. This is extremely annoying, but I haven't had time to really look into it and it seems others can't reproduce it.

B. There seem to be some occasional oddball problems when stepping through code. Like it'll skip lines, or stay on the same line for many steps. And also an annoyance regarding how that VS Code extension handles "Step Into" for functions you don't have the source for: you can easily get into an infinite popup situation and have to restart the debugger.

IMO the sad truth is that if a great debugger is a prerequisite to use a language, then you're limited to about 5 total languages.

[1] [https://marketplace.visualstudio.com/items?itemName=webfreak...](https://marketplace.visualstudio.com/items?itemName=webfreak.debug)

[2] [https://github.com/rust-lang/rust/issues/45218](https://github.com/rust- lang/rust/issues/45218)

<comment><USER7> > Like it'll skip lines, or stay on the same line for many steps.

I've never hit these problems, though I have the source for everything I'm compiling in Rust in general.

<comment><USER8> I've run into it before, but it's not usually too serious. It only usually happens on lines with compound expressions or chained calls like this:

      foo.into_iter().map(|x| x+1)
         .filter(|y| y > 2)

My working theory is that it's related to situations where there's multiple statements on the same source line (or inside a block inside a lambda).

<comment><USER7> Yeah, quite possibly. I feel like I've stepped through some pretty gnarly iterator chains and it's worked surprisingly well. It is rare that I actually need to turn to the debugger, so I could be mistaken.

</comment></comment></comment></comment></comment></comment><comment><USER9> This is the kind of post that's a joy to read, especially during the holiday season.

Congratulations on a great 2017, Rust.

</comment><comment><USER10> I have recently gotten back into coding with Rust and I must say that the strides in the compiler errors and usability have been massive. Getting things to work has never been easier and every time I get something wrong I learn a little bit more.

Kudos Rust team.

</comment><comment><USER11> Not done my homework with Rust yet. Pardon my ignorance.

Does Rust have a native(all Rust) implementation of SSH client yet?

(I know ssh2-rs exists, but, I'm looking for a Rust implementation and not a wrapper over libssh2(C))

Does Rust have a stable/documented library for serving Web applications over http/2 yet?

(I have heard about h2, hyper and Rocket, but can I write a basic web app in Rocket and expect it to use http/2?)

I like everything I hear about Rust. I will allocate serious learning time to it when the answers to the above questions turn to yes. Hopefully soon!!!

<comment><AUTHOR> I believe [https://crates.io/crates/thrussh](https://crates.io/crates/thrussh) is the answer for #1.

#2 is coming, but not quite yet.

</comment></comment><comment><USER12> Best part of Rust in 2017 for me is all the new books: 2nd edition of The Book, Programming Rust, Learning Rust, Mastering Rust

</comment><comment><USER13> You read this and then you read post from Crystal Lang. You can see a significant difference in choices made and why Crystal 1.0 was delayed.

</comment><comment><USER14> I've had a great time writing Rust this past year, and I'm looking forward to the next year. Thanks, Rust team!

</comment><comment><USER15> Is it possible these guys fail to realize people don't use python for its speed? I, for instance, use python because it's an extremely elegant language that allows me to write short, compact, and succinct code that's incredibly easy to read and is self documenting.

<comment><USER16> I do use python, but calling any dynamically typed language self documenting is a huge overstretch. Sure, naming may be structured well, revealing _intent_ , but without formal contracts the code is not self documenting. There is this problem with computers that they perform what they are told to, not what is expected from them. Good naming and structure help closing the gap between expected and actual behavior, but the gap is always there, therefore this is documentation in at most a very broad meaning having very little to do with language in question.

Static types, on the other hand, actually document things - at the very least what can be passed and what will be returned. This may not be completely necessary when reading code or even writing code in a well known environment and context that fits into programmer's head, but without formal contract programmer is faced with two choices: _trust_ manual or read and understand ALL the code. Python is notorious offender here with args and kwargs - <USER2> reading code using some wrapper library I must understand how underlying library is used, because customization of underlying library behavior is not part of wrapper library documentation.

<comment><USER17> I agree. I'm learning Rust by rewriting someone else's small Python app in it. Rust requires you to define your variable types, especially for container types like vectors. I'm a decent Python programmer, and the app code is straightforward, but I realized I don't know what data the app operates _on_ at each stage! I was forced to randomly insert print() around.

Maybe it's time to finally learn gdb...</comment></comment></comment>