Linux Mint 15 Most Ambitious Release Ever - <AUTHOR> http://ostatic.com/blog/linux-mint-15-most-ambitious-release-ever <comment><USER2> I run Mint 14 "Nadia" on one of my machines. I have no intention to upgrade to Mint 15 at this point.

The problem is, Ubuntu 13.04 is only supported for 9 months, and it's already been a month since the release. Since Mint recommends fresh installs rather than upgrading between releases, it means you'll have less than 8 months to play with it before you must wipe it and move to Mint 16. That's a rather short shelf life for an "ambitious" release.

Since Canonical seems unwilling to support any non-LTS release for more than a few months anymore, it might be a good idea for the Mint team to reconsider their release cycles as well. Perhaps they should stick to LTS releases and work more aggressively on backporting stuff. Perhaps they should finally switch their main distro to a rolling release based on Debian (LMDE). In either case, I don't think there's much point following Ubuntu releases as closely as Mint has done so far.

<comment><USER3> Did you consider using Mint LMDE? It seems to be what you want:

<http://www.linuxmint.com/download_lmde.php>

<comment><USER4> That's my plan. I had head that it was a pain if I had UEFI. Any idea on how much of a pain? I just haven't gotten around to it yet.

<comment><USER5> I don't think so. It took Debian a bit longer to get their UEFI stack working but it is now with the release of wheezy.

</comment></comment></comment></comment><comment><USER6> So this article seems to say the biggest new features are support for HTML- based login screens and a new driver manager that "uses the Ubuntu back-end but Clem says it 'looks a bit better'"?

My, that does sound ambitious.

<comment><USER7> this was the issue I had with using a Linux OS (ubuntu, mint) full time and why I switched back to Windows (and run a VM). many of the distros are focused on replicating basic OS features over and over again.

<comment><USER8> They seem to be focused on providing features 99% of Linux users don't want or need instead of fixing the plethora of bugs that are creeping in. Last time I tried to install Ubuntu, I ran into several bugs _in the installer_ , which Linux Mint inherited. The hard disk encryption setup failed, for example. When I finally got the installer to work, I was greeted with several background apps crashing. Months later, these bugs still aren't fixed. The quality has really gone down in the last 2 years, to the point where I'm thinking I'll have to give Debian or Fedora Core a shot next time.

I wish these people would focus on being more minimal: do one thing and do it well. Instead, they've been trying to tailor their desktop OS to run on tablets. Who the f __* runs Ubuntu on a tablet anyways? (if you do, please respond) They're alienating most of their users for a potential market they realistically have almost no chance of getting into.

<comment><USER9> I definitely agree. One grave mistake I made had resulted in all my data being lost.

I have always been Fedora fan and mostly I am not disappointed, (although Fedora suffers from equally annoying bugs as well, like sound). But overall it's a great distro, and installs nicely.

Now I am doing development work, so tend to try and stay up to date as much as possible, since the software I use is very unstable and just beginning to mature so they can play fast and loose with the upgrade cycle.

Now typically Fedora installs are easy, I can allocate free space or it knows about other distros and I can replace them.

Now I had a perfect running system with Fedora 18 and Linux Mint 13(Maya), and probably longest running without upgrade. After this long period I had forgotten that if I want Linux Mint, I have to manually partition for it to behave properly. I had forgotten this and selected the option to replace the existing Linux Mint like I always do in Fedora for like the last 4 releases.

For whatever reason it automatically chooses my raid partiton(sda), instead of my SSD(sdb) which I store my OSes on to format, and I loose about 1.5TB of data I have been collecting for sometime.

Not to mention it is incapable of behaving nicely with Fedora(possibly due to LVM structure) and in the end I loose everything and have to go back to scratch. It also makes a new partition for the bootloader then cannot boot Fedora, I cannot even repair the grub bootloader for both oses to work together. It's a shame because one release ago everything was fine. But now I have sworn of Ubuntu and Linux Mint unless I am forced to.

It's come to a point where I just want to create the same packages for Fedora and maintain it myself. I am sick and tired of this constant upgrading and loosing your shit. I am use to it as a developer, but it's really starting to kill a lot of time having to re-setup my system.

</comment></comment></comment></comment><comment><USER10> Mint never ceases to impress me. Mint 15 runs faster off of a live cd for me than ubuntu 12.04 LTS does natively. I presume this is something to do with unity and all the underlying bloat that is becoming more and more of a defining characteristic of ubuntu these days. I don't have anything against unity in user interface terms; I think it's a pretty decent GUI and doesn't deserve the flak it gets from the linux community. Nevertheless, Cinnamon is a triumph of clean, simple, and utilitarian UI design and trumps any other conventional UI on GNU/Linux I've ever used, and the underlying design of Mint seems to ensure there's never any slow down getting in the way of getting things done.

Keep up the good work Mint

</comment><comment><USER11> Linux Mint has sucked since 11, and I mean that. It sucks.

Mint 10 (julia) was awesome, and I refuse to tolerate Mint beyond that version. Mint 11 was awful, and I feel the same way about everything thereafter.

Bad, ugly themes. Strictly enforced interface, with settings locked away from user customization. Everything was unnecessarily new and different, and previous experience was not compatible with the new interface. (yes, I know about how everyone (actually, just snob developers) hated Gnome 3, and there was a revolt, and migration to Mate Cinnamon, XFCE, blah blah blah. They all suck. I hate them. They are not good.)

Before you argue with me, consider that the only thing Mint has to offer is it's desktop/windowing interface. Otherwise, it's merely yet another Linux flavor, and if I have to relearn and resort to the command line for ANYTHING, why not just use some other Linux distribution, and deal with everything from the command line in the first place? Which is exactly what I did.

</comment><comment><USER3> Mint is currently my favorite distro. But the lack of encryption in the installer really makes it a pain to install. Manual mounting, chroot, setting up cryptsetup an all that stuff. So for a quick install I still prefer Debian which supports encryption out of the box.

Does anybody know about the encryption support in Mint 15?

<comment><USER12> FDE has been supported out of the box since Mint 14.

<comment><USER3> Im not looking for FDE. I have several OS on my machine. What Im missing in Mint is the ability to set up encrypted partitions during the install.

<comment><USER12> You can do that. FDE commonly means an encrypted partition even though that's not what the name implies. It's never truly full disk as you have to have an unencrypted partition for the boot loader. There's also no restriction on having other unencrypted partitions. I've had this set up this way since Mint 14. I'm not sure why you're having an issue. You just set this up when you're creating your partitions (manually).

I have three main partitions: the unencrypted /boot partition, a LUKS encrypted partition that contains my / partition, and an unencrypted NTFS partition for Windows. Works like a charm.

The way to do it is to run `sudo apt-get update && sudo apt-get dist-upgrade` (or `apt-get upgrade`) before running the installer when you're in the live environment. There's a newer version of the installer in the repositories that has the option for FDE. I can't speak for Mint 15 because I didn't do a fresh install, just did an upgrade and never saw the installer. I expect it'll be something similar, or perhaps included by default.

</comment></comment></comment></comment><comment><USER13> I am still running Mint 13 Maya LTS for now, and I don't really want to go stray from the LTS, but their work with Cinnamon is really tempting me. If they have put in windows tiling and the ability to dock the panel to the right, I would switch right away.

<comment><USER14> I have tiling in cinnamon with gtile. Have you tried installing it?

For me the mint community has been a big difference. I have gotten great text support on irc from volunteers, much better than I got with Ubuntu in various places online, where people seem to be swamped with new and clueless users.

I am worried that unity integration will become fully incompatible with the gnome backend, making cinnamon as a de problematic. But so far so good.

Though I am also experimenting with getting fbterm and potentially tmux to play nice when I boot to text console and just ignore the DE altogether for some serious power savings. tmux seems to not allow fbterm to use its 256 color capabilities though. But I have digress.

Ultimately I feel like mint has a lot going for it. Some of the design decisions are not quite what I would do, but the mint team has been awesome about working with other distributions/forks, and even collaboration on shared components.

<comment><USER15> +1 for gtile. Makes gnome shell worth using.

</comment></comment></comment><comment><USER16> I enjoyed using an earlier version of Linux Mint, but the default gnome-shell UI had a massive memory leak ( <https://bugs.launchpad.net/linuxmint/+bug/930402> ) which was never fixed and "upgrades" to the next version are wipe-and-reinstall. So, I wiped it and installed Ubuntu 12.10 which I dist-upgrade to 13.04 without incident.

With no support and no upgrade path, I don't see what the draw is.

</comment><comment><USER17> > The Mint Desktop Manager now has a choice of three "greeters." A new greeter > for 15 supports code such as "HTML5, CSS, Javascript, [and] WebGL".

So that must be the most ambitious feature ever. I guess they're using LightDM, and if they are, that feature has been there for years.

</comment><comment><USER18> Ambitious? It looks the same as always. Not that it's bad "if it's not broken don't fix it"

</comment><comment><USER19> There seems to be a lot of complaining/negative comments from people about software that is provided to them for free...

</comment><comment><USER20> They forgot to mention the best new feature - changing the code name from Nadia to Olivia. Olivia sounds much more... stable. On the other hand whenever I read support for HTML5, CSS, JS, it's like... something dies in me. So, will be staying with Nadia for a little while longer.

<comment><USER18> >whenever I read support for HTML5, CSS, JS, it's like... something dies in me

why do you hate your freedom?</comment></comment>


Gas stove cooking routinely generates unsafe levels of indoor air pollution - <AUTHOR> https://www.vox.com/energy-and-environment/2020/5/7/21247602/gas-stove-cooking-indoor-air-pollution-health-risks <comment><USER2> I also suspect that the high level of environmental certification the condo I live in has is not helping, because the ventilation is desperately inadequate.

</comment><comment><USER3> That's the irony of microwave cooking, it's actually safer than gas stoves because of the air quality issue.

<comment><USER4> Why is this ironic? Is microwave cooking actually dangerous?</comment></comment>


Extraterrestrials May Be Robots Without Consciousness - <AUTHOR> http://cosmos.nautil.us/feature/72/it-may-not-feel-like-anything-to-be-an-alien <comment><USER2> This strikes me as obvious: ETs could be just about anything.</comment>


Differential privacy for dummies - <AUTHOR> https://github.com/frankmcsherry/blog/blob/master/posts/2016-02-03.md <comment><USER2> To anyone interested by differential privacy I would recommend this article: [http://research.neustar.biz/2014/09/08/differential- privacy-...](http://research.neustar.biz/2014/09/08/differential-privacy-the- basics/)

It does a very good job of explaining the basics.

They also published a follow up with the quite popular taxi dataset: [http://research.neustar.biz/2014/09/15/riding-with-the- stars...](http://research.neustar.biz/2014/09/15/riding-with-the-stars- passenger-privacy-in-the-nyc-taxicab-dataset/)

</comment><comment><USER3> > The formal version of differential privacy requires that the probability a > computation produces any given output changes by at most a multiplicative > factor when you add or remove one record from the input.

What is the significance of this? This statement means nothing. The context should be better described. I thought this was a "for dummies" article.

<comment><USER4> I also turned to Wikipedia immediately. Differential privacy is concerned with protecting individual records when making statistical queries. For example, if you could issue a query to a medical case database like »What proportion of the population was born on this specific date in that specific small town with some specific eye color and has this illness?« you could potentially figure out whether or not one person has a specific illness by either getting zero or a very small percentage. One possible solution and what is mostly discussed in the article is adding some noise to the result, as little as possible to not make the query result meaningless but enough to protect each record.</comment></comment>


Every major cable TV company lost subscribers last quarter - <AUTHOR> http://arstechnica.com/information-technology/2016/08/every-major-cable-tv-company-lost-subscribers-last-quarter/ <comment><USER2> I left my cable subscriber recently and was surprised at how easy it was. I somewhat expected the hard sell. They did try and lower my bill but when I declined it was accepted easily.

It's funny how perspective plays in, though. When she offered to drop the price dramatically my thought wasn't "gee, that's a good deal" it was "I've been _really_ overpaying for a _long_ time". If they can survive on those low prices, it's clear subscribers are being gouged.</comment>


jwz: Apple recently broke Ctrl-Y - <AUTHOR> http://www.jwz.org/blog/2011/12/apple-recently-broke-ctrl-y/ <comment><USER2> "Update: Holy shit! I am told that this bug was fixed FIVE HOURS after I posted this -- Webkit bug 73888 [1] and the patch [2]. Thanks, Alexey!"

      1. https://bugs.webkit.org/show_bug.cgi?id=73888
      2. https://bug-73888-attachments.webkit.org/attachment.cgi?id=117988

</comment><comment><USER3> HOKAY. So you can totally do this:

> I'm guessing there's no easy way to replace the definition of the > deleteToEndOfParagraph: action with something else...

with DYLD_INSERT_LIBRARIES and method_exchangeImplementations (and maybe launchd to apply that DYLD_INSERT_LIBRARIES to everything?).

What you have to do is:

Implement a category message that does what you want (my_deleteToEndOfParagraph:).

Write a function that uses method_exchangeImplementations to replace deleteToEndOfParagraph: with my_deleteToEndOfParagraph:. deleteToEndOfParagraph: probably depends on class (NSTextView, NSTextField, WebView, etc.)

Create a shared library that uses your function as an initialization routine.

Inject that shared library into every app on the system.

As you can see this is _very easy_. Har har har.

<comment><USER4> And people complain about Linux wasting your time.

<comment><USER5> Are you for real?

As if the normal use case is that of a user wanting to change some text editing bindings back to Emacs-like behavior...

</comment></comment></comment><comment><USER6> Great comments thread on that post, including this gem after WebKit is fingered as the wrongdoer:

"Two different libraries to implement text-field editing -- because, you know, that's somewhere you might want to diverge and innovate."

LOL.

<comment><USER7> Makes a whole lot of sense to me. Text input in a browser should be handled a lot more carefully than text input to "regular" system applications.

<comment><USER8> Why? What is so special about the browser? (or is my sarcasm detector failing again?)

<comment><USER9> Unlike most desktop apps, browsers interface user directly with the internet, and it is dangerous out there.

For example, theres' case of stealing text from copy/paste buffer <http://news.ycombinator.com/item?id=3314004>

<comment><USER10> More and more desktop apps are interfacing the users with the Internet though, especially when you extrapolate Apple's model with their app store.

It is just as dangerous "in here" too...

</comment></comment></comment></comment></comment><comment><USER11> I'm always agog when an organization changes something beloved like key bindings. Qui bono? Someone who uses them is in the same boat as everyone else, muscle memory-wise. And someone who doesn't shouldn't care. And in either case, there should be enough people with facial hair (or female equivalent) who will block it because toying with user expectations is bad.

<comment><USER12> This is a tangent, but you want 'cui bono'[1]. 'Qui' is the nominative; the phrase is a double dative. (Not trying to be a jerk, but I figured you might want to know.)

[1]: <http://en.wikipedia.org/wiki/Cui_bono>

<comment><USER13> My thanks for this tangential line of thought. I didn't know what was being referred to.

</comment></comment></comment><comment><USER14> File a bug. This seems like the kind of thing that Apple would actually fix.

<https://bugreport.apple.com/>

<comment><USER15> Or not.

OS X should be agnostic about the software running on it. If you fix it for Emacs, then it should also be fixed for vi users and nano users, etc. some of which are mutually exclusive.

<comment><USER16> The point is that all generic text fields on OSX have supported Emacs keybindings since forever, not vi or nano keybindings.

<comment><USER17> though, this thread just makes me want vi bindings in os x text areas. I would settle for shell bindings that can change the cursor shape.

</comment></comment></comment></comment><comment><USER18> To clarify this a bit for non-Emacs users (as I saw a comment), the tl;dr version is that jwz wants Mac to maintain the Emacs key bindings that essentially amount to a specialized set of copy, cut and paste functions in text editing.

This is not because Apple particularly sponsors Emacs, but because historically, Mac key bindings and Emacs key bindings were the same for those functions. So it's the same (roughly) as finding that Command-A, Command-C and Command-V no longer work the way they used to.

<comment><USER19> Clarification of this for those interested in history: The original Mac did not have control keys; I guess NextStep had some Emacs bindings. When Mac OS and NextStep gave birth to Mac OS X, it was possible to keep both sets, as there could not be clashes. I am not sure those Emacs bindings 'officially' exist, though (the human interface guidelines mention the use of the control key for accessibility, but not for text editing)

</comment></comment><comment><USER20> You can set per-user shortcuts for this. <http://www.hcs.harvard.edu/~jrus/site/cocoa-text.html>

I'm unsure if it works in 10.7 though.

<comment><USER21> It always brings a smile to see my 2006 page linked. :)

As ever, feedback is welcome.

<comment><USER22> I've used your documentation before, and it's amazingly useful. It's let me solve keyboard mapping issues in the least hacky way possible, especially when combined with KeyRemap4MacBook.

</comment></comment></comment><comment><USER23> As a non-emacs user: can someone explain what jwz is talking about here?

<comment><USER24> Did you follow his little demo? Let me see if I can explain it. "Killing" in Emacs-jargon is similar to cutting (ctrl/cmd X). Holding control and pressing "k" (C-k) deletes the text starting at the cursor (point) up until the end of the line, and puts that text in a buffer. It can be pasted (yanked) with C-y. In Emacs, killing multiple times _without_ any other movement between kills appends each bit of text to the buffer. If you move between kills the buffer is wiped out, and subsequent kills put the killed text into a clean buffer.

I think he basically wants the kill buffer to be wiped out when you move between kills. His demo shows that in OSX text fields this is no longer the case, and at least on my machine running 10.6.something this is true. Emacs of course still behaves the way he wants.

<comment><USER18> That was actually a great explanation - to clarify a bit, yes, jwz doesn't have any issue with Emacs. But Mac used to use the same key bindings typical of Emacs, so jwz is miffed because for people comfortable in that environment, it's a pain to not be able to use the same shortcut for what amounts to copy, paste and cut.

</comment></comment></comment><comment><USER25> I use ^K all the time, but somehow I didn't remember ^Y from my dalliance with Emacs a decade ago. And now that I know I want it, I can't have it. Crap.

</comment><comment><USER26> Hmm, I can reproduce this in Safari, but not in TextEdit, nor TextMate, under 10.7.2.

<comment><USER27> As mentioned in the link's comment thread, ^Y is broken for Webkit. I just tried this in Mail.app and it worked fine.

<comment><USER28> Amusingly enough, Mail's compose window uses WebKit for the content area. According to <http://webkit.org/b/73888> the issue is specific to the WebKit2 layer that is currently used only by Safari.

</comment></comment></comment><comment><USER29> you can change the keybindings to do multiple things, not just pick a single preset command like deleteToEndOfParagraph. not sure how much help that is though, since what he wants is kind of adding "truncate buffer" (or at least "setLastCommandFlag") to ALL other commands, rather than actually changing ctrl-k itself. this is not a problem with the deleteToEndOfParagraph implementation though, and i don't see how hacking that could help, since he wants something to happen after hitting arrows keys, typing, etc...

</comment><comment><USER30> Just to be clear, these are standard Shell keybindings that Emacs also uses—not 'Emacs keybindings'.

<comment><USER31> Emacs had them first; shells copied them.

</comment></comment><comment><USER32> While I can understand the issue the change creates for the author, a nexus between the emacs interface and Apple's overall user experience philosophy would appear to be somewhat hard to find.

<comment><USER33> I nearly got a guy on the MPW Shell team fired -- I was egging him on to add keyboard macros to MPW (the Macintosh Programmer's Workshop), and he eventually did. They were powerful enough to emulate at least a top-level mostly Emacs environment.

Oh, the fur flew. Post-facto, managers piled on and tried to make the feature more Mac-like. It was fine as it stood. It was amusing to watch.

Also, developers loved it.

<comment><USER34> Why would that be (nearly) a firing offense?

<comment><USER35> Because it makes the story more interesting.

Also, Apple is one strange company. A friend who worked there as a contractor told me that there were two Perl teams there, working in different buildings. He organized a lunch so that the two teams could meet each other. After someone higher up found out, that was the end of his contract. Apparently there is so much secrecy that even teams working on bullshit HR apps (or the equivalent) can't even have lunch together.

Apple is a cult. Follow the rules or you go to hell.</comment></comment></comment></comment>


I'm seeking beta-testers for my user support snapshot service - <AUTHOR> http://jooplicate.com?hn1

<comment><USER2> That's cool, I wasn't sure if I'd get HTML or an image, I guess HTML makes sense, but could get big for large app with scripts (although I'm guessing you strip those out.)

Did you consider using canvas, which I think can get image data from the current page? Obviously less supported, but might help people with browser bugs that are harder to reproduce, even with the HTML.

<comment><AUTHOR> Yes, scripts are removed.

I will need to have a closer look at the canvas API and see what actually works across different browsers. It could well be a simpler way to generate images - even if IE6/7/8 will miss out.

Thanks.

<comment><USER3> Speaking of canvas, can you grab canvas/svg content embedded in the page?

<comment><AUTHOR> I'm not capturing canvas content yet. It should be possible - but I'll need to look into it.

SVG content appears in the DOM so should be captured.

</comment></comment></comment></comment><comment><USER4> very cool, worked exactly as expected.

great landing page and demo, value proposition is very clear and the demo works exactly as expected.

thoughts:

1\. that title bar takes up a LOT of valuable screen real estate, pushing some of informative content below the fold -- don't need quite as much title space

2\. draw more attention to the "demo" links. Its easy to miss the link as is. The demo is great, takes 2 seconds only, and was very convincing. You should want EVERYONE who makes it to the landing page to convert to a demo.

<comment><AUTHOR> Thank you for the feedback. I'm glad you like the site. I'll chat with my designer about alternative header designers. Drawing much more attention to the demo is a great idea. I'll see what I can do :)

</comment></comment><comment><AUTHOR> I'm the developer behind Jooplicate. If you have any questions please let me know. Thanks!

<comment><USER5> That's great--how do you do the snapshotting in pure Javascript? (If that's your secret sauce, fair 'nuff, but any hints would be appreciated.)

Edit: Oh, wait, it's just HTML you're sending--I see. You're not capturing a screenshot.

<comment><USER6> Do you know how <http://www.snapengage.com/> takes screenshots? I'm not sure if it's HTML or an actual image, but it might be work looking into.

<comment><USER5> Interesting. It looks like it depends on Flash to take that screenshot.

</comment></comment></comment></comment><comment><USER7> How can you garantee that you won't show any private information? Suppose the user was filling a contact form with some private info that he wouldn't like you to see, do you strip this out? What about password fields? You might want to get an option asking the user if he allows the screenshot to be sent... Other than this, the only thing would be the afforementioned jpeg screenshot. Great job.

<comment><AUTHOR> I can see privacy being a issue. I think at least I will need to add a message to the form to inform the user. Having a checkbox to enable/disable the snapshot may be a useful option too. So then the user can still send a message, but without the snapshot.</comment></comment>


Ask HN: What are the best resources about Internet routing? - <AUTHOR> I'm looking for textbooks and online resources. Covering BGP, NAT, etc. In particular, I'd like to understand how back-end IPs for advertised IPs are specified and changed. Also, why traceroute between IPs in the same city can loop through another country. <comment><USER2> Pick up any CISCO book on Routing.</comment>


Ask HN: How would you change this blog community? - <AUTHOR>

A friend and I have been running a blog network for college students in our free time--TheCollegeBlogNetwork.com. It was somewhat of a stagnant project for a few weeks and now we're back working on it as much as we can.
How would you change our website?
We're currently working on a redesign and a bunch of new features (some of which is related to our monetization strategy.) I am always amazed at how insightful HN can be and would love to hear your input on what you would do to change our website. <comment><USER2> I don't personally like sites that "resist" resizing. Try increasing the font size in your browser by even 1 or 2 levels, and you'll see that the content of your site is truncated. Try making your browser twice as wide, and ask why you can't see twice as much content.

</comment><comment><USER3> Get rid of the black background.</comment>


Ask HN: Simple and Elegant Graphics App for Novices? - <AUTHOR>

My day-distraction-project Profile Banner went viral a couple weeks ago (even though I got no love from HN!).
http://www.facebook.com/apps/application.php?id=117320678334654
I'm getting 200k impressions per day, but I don't want to put skeezy ads all over the place to pay for the servers I need to buy (or lease or whatever).
I was thinking that I could sell a really simple graphics app. I get quite a few requests for recommendations. My users want something easy to make the banner of their dreams.
I sent Pixelmator (http://www.pixelmator.com) an inquirey (a few minutes ago), but I thought I'd ask here for recommendations. My users are young, international, and a little silly.
I'd love to find something that feels more like an iPhone app than a desktop one. I think $20 would be a good price point, hopefully with at least a $5 referral payout.
Any suggestions. I'd also be curious about open source ones (but REALLY simple), and other suggestions for monetizing. I am working on a system where users can pay to get their banners featured so they get more downloads. But who knows if that will work out. <comment><USER2> Here's another possibility: Sketch [1] (by the makers of Fontcase), which seems simple enough also. Incidentally, they also have an iPad app, called SketchPad [2].

For open source, there's an app I've tried a few times called Drawberry [3], which looks something like Pixelmator, but is for vector drawing.

[1] <http://www.bohemiancoding.com/sketch/overview/> [2] <http://www.bohemiancoding.com/sketchpad> [3] <http://raphaelbost.free.fr/DrawBerry.html>

</comment><comment><USER3> Pixelmator is great but I'd also highly recommend Acorn[1] (for Mac users).

[1]: <http://flyingmeat.com/acorn/>

<comment><AUTHOR> Oooh. That does look good. I will look into it. Thanks!

I did want to find a cross platform product so I could unify support and tutorial information, but I can compromise on that.

</comment></comment><comment><AUTHOR> Clickables:

My App: [http://www.facebook.com/apps/application.php?id=117320678334...](http://www.facebook.com/apps/application.php?id=117320678334654) <http://apps.facebook.com/profile-banner/>

Pixelmator: <http://www.pixelmator.com/></comment>


Why Coding Your Own Makes You a Better Developer - <AUTHOR> https://medium.com/better-programming/why-coding-your-own-makes-you-a-better-developer-5c53439c5e4a <comment><USER2> It's all about learning and in reinventing the wheel you understand why the wheel(s) you know were made the way they are.

And to become an even better developer, TEACH what you've learned to others.</comment>


GitHub open source repos are under attack. Any experience? - <AUTHOR> https://www.reddit.com/r/webdev/comments/cbf1k6/our_github_open_source_repos_are_under_attack_any/ <comment><USER2> GitHub's report abuse page has better protection than the issue board. I only reported 2 in a minute.

"We've received too many requests from your IP address recently. Please wait a few minutes, then try again."</comment>


Reddit bans Alt-Right Group - <AUTHOR> http://www.thedailybeast.com/articles/2017/02/01/reddit-bans-alt-right-group.html <comment><USER2> Some explanation here: [https://www.reddit.com/r/SubredditDrama/comments/5ri97o/ralt...](https://www.reddit.com/r/SubredditDrama/comments/5ri97o/raltright_has_been_banned_discuss_this_here/)

"There is a website I can't link that is taking money to crowdfund doxxing efforts. After the admins banned that domain, the mods on /r/altright continued to manually approve submissions to that site and added them as sticky/announcement posts. My guess is that is the reasoning behind the ban."

So they got banned for repeatedly and intentionally, with moderator support, circumventing Reddit's rules -- not for 'suppression of free speech' or anything like that. I'm sure the admins were glad to be rid of them, but, they really brought it on themselves.

<comment><USER3> What's the actual incident? Does anybody have details?

Wesearchr was banned from twitter for looking for information about the guy who sucker-punched Richard Spencer live on video. Is this ban for the same incident?

This seems a little different from how I normally use the term "doxxing", which is posting real-life information about a person who would prefer to remain anonymous. I mean, I'm sure the guy who assaulted Spencer would prefer to remain anonymous, but others have good reason to oppose that.

<comment><USER4> In my experience moderating a popular (default) subreddit, the admins and other mods will brush under the carpet actions done by the political left that would have the political right put under notice/(shadow)banned/sub-closed, and it's gotten worse exponentially show since the heat of the election season last summer.

Searching for someone who committed a crime vs senseless "doxxing" (someone who hasn't committed a crime) are two different things. However, when it suits the reddit admin's purposes they'll outright ignore it or use a heavy hand and ban people/communities.

They're heavy leftists, so you can guess where this tends to lead things on that site.

<comment><USER5> How is vigilante justice a good idea here? Why would someone committing a crime be a good reason to start an internet witch hunt?

If someone has a tip, they should bring that information to the police, not their local internet conspiracy group.

<comment><USER4> Thing is, it's not a conspiracy group's effort, nor was it a witch hunt (which is looking for something that isn't there).

They (and _many_ others) were pointing people to police if they found anything out. The pictures were all over the internet and it's impossible to keep your ID hidden once your face is out there for the world to see.

<comment><USER5> A bunch of white supremacists hunting to identify a man's assaulter. What could possibly go wrong?

After all, white supremacists have a long history of being fair and impartial fact finders, simply looking for the truth. /s

</comment></comment></comment></comment></comment></comment><comment><USER6> The important part: the group was not banned for their beliefs or their speech. It was banned for violating the TOS, in particular for doxxing.

<comment><USER7> This now the default social media censorship tactic. Apply the TOS harshly to your opponents and loosely to your allies. When an Alt Right sub doxxes people, they get banned; when an SJW sub doxxes people, they get ignored.

<comment><USER8> Do you have a source for that? Sounds like a conspiracy theory to me

<comment><USER9> Is this a serious question? It's happening everywhere.

For example the famous Milo Twitter case where Milo himself got banned, but all the radical black hate groups and the actor herself who was posting tons of racist content didn't even get warning but instead tons on sympathy.

I'm not a fan of alt-right, but for news and social media websites, being so disgustingly biased and trying to help the radical leftist agenda is one of the major reasons why things like Trump and Brexit happen.

<comment><USER10> "Radical black hate groups?" Your slip is showing.

</comment></comment></comment></comment></comment><comment><USER11> /r/altright was banned for doxing. An example can be found on imgur [http://imgur.com/a/pZ8yN](http://imgur.com/a/pZ8yN) where you can see not only doxing, but crowd funding to support doxing of an individual they disagreed with.

<comment><USER12> I would disagree with somebody sucker-punching a community member in the face. If there are no other targets this seems entirely legitimate.

The ban also seems slightly prejudicial, because on the other side there is /r/antifa where people are bragging[1] about the assault which /r/altright was trying to solve with this bounty. Granted, /r/antifa seems to be mostly dissent against this stuff, so it wouldn't be a subreddit shutdown.

I think that _assaulting people you disagree with_ is a far more serious charge than posting a reward for information which leads to the arrest of a criminal. The latter is something befitting of a police agency.

[1]: [https://www.reddit.com/r/antifa/comments/5r5rlp/](https://www.reddit.com/r/antifa/comments/5r5rlp/)

<comment><USER13> /r/antifa is run by neo-nazi squatters who want to make antifa look bad. They probably should be shut down, and there are other places actual activists organize.

<comment><USER12> Not to get too far into it, but it's hard to make antifa look any worse than they actually are. A bunch of cowardly, destructive, eyes-shut communist nincompoops parading around in crowds because they are too timid to stand alone for their indefensibly stupid beliefs; that is, if they're not just there to fit in.

I don't think you have to be a neo-nazi to appreciate how pathetic and sad antifa are. I do not think you have to be a neo-nazi to have a knowing laugh about the thumb-sucking intellectual fragility they represent.

</comment></comment></comment></comment><comment><USER14> People jump to compare to digg or clamping down on "free speech" but groups that dox or participate in harassment don't deserve to be sheltered.

Sure, reddit started as a sort of "libertarian dream" but it's pretty clear at this point that some groups choose to abuse that.

</comment><comment><USER15> If it is a violation of tos shouldn't they ban the user instead of deleting the subrredit?

Edit: now i've read the comment by 'ajkjk and that makes more sense

</comment><comment><USER16> Note that they were banned for doxxing, not for intolerance or hatred.

Generally I strongly favor free speech and believe the answer to 'bad' speech is more speech. However, there always are limits such as slander, harmful deception (yelling 'fire' in a crowd), provocation to crime ('assault the man in the front row!'), and more. I think there may be a way to clearly and justly draw a line for white supremacist and other hate speech, if and when we want to do it.

 _Tolerate all but intolerance itself._

There is some theoretical support:

* Think of tolerance as a social contract: I tolerate you if you tolerate me; or, everyone tolerates you if you tolerate everyone. If you break that contract then you have no claim on everyone else's toleration.

* Karl Popper's Paradox of Tolerance. _Unlimited tolerance must lead to the disappearance of tolerance. If we extend unlimited tolerance even to those who are intolerant, if we are not prepared to defend a tolerant society against the onslaught of the intolerant, then the tolerant will be destroyed, and tolerance with them._ [0]

On the other hand, the always incredible Stanford Encyclopedia of Philosophy makes some good arguments against it, especially that humanity will abuse this new authority.[1] Partly for that reason and partly to err on the side of individual liberty, I would apply this rule only when there is a practical necessity. One requirement would be that the intolerant group poses a threat. For example, a group of intolerant Jainists in Los Angeles isn't a threat - they are too few to threaten anyone in that environment. In a tiny town where they are the majority, or in a locked room with one Confucian about whom they are saying intolerant things, it would be a threat.

But this all is my personal analysis; I'd be interested in some established standards such as workplace law, neo-Nazi speech in Germany, etc.

\----

[0] I can't find an authoritative source or discussion, but Wikipedia covers it: [https://en.wikipedia.org/wiki/Paradox_of_tolerance](https://en.wikipedia.org/wiki/Paradox_of_tolerance)

[1] [https://plato.stanford.edu/entries/toleration/](https://plato.stanford.edu/entries/toleration/) \- Search the page for "paradox of drawing the limits"

</comment><comment><USER17> six weeks ago I would have regarded the idea of doing this as inimical to the principles of free discourse and debate that I feel are fundamental to democracy and indeed to small-l liberal civilization in general.

now I find myself wondering whether my principles are being contaminated by the immense personal anger I feel, or whether perhaps my principles weren't as rationally derived as I had previously believed.

<comment><USER18> Then you may find this concept interesting:

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

Living in an open society does not mean tolerating those who aim to end the open society. The altright, as a rewarming of white nationalism, which is a rewarming of Nazism, seems to not be such a huge fan of our open society.

<comment><USER19> What assumption laden, lazy use of words. You throw them around as smears and pretend they have specific meaning rather than the emotive symbols they are.

Nigel Farage who convinced a majority of Brits to exit the EU is generally regarded as being altright. Do we therefore conclude that this British majority went along with someone who supports a 'rewarming of Nazism'. This is vile garbage.

Identifying targets precisely and offering arguments is preferable to sloppy innuendo.

<comment><USER18> Though you have many insults, it seems that the heart of your argument is:

"Nigel Farage is altright. Altright can't be white nationalism because then Farage would be white nationalist."

However the alt right is not defined by Nigel Farage, rather if Nigel Farage wraps himself in that term than he is defined by it rather than defining it, as it predates him.

Reading anything about the alt-right will show that my estimation of it as white nationalism is correct. Look at

[https://www.washingtonpost.com/opinions/five-myths-about- the...](https://www.washingtonpost.com/opinions/five-myths-about-the-alt- right/2016/11/23/66e58604-b0c2-11e6-be1c-8cec35b1ad25_story.html?utm_term=.3399cc542e8d)

Which points to alternativeright.com

This idea that "this idea is bad, and my politician accepts this idea, therefore this idea can't be bad" is classic backwards thinking. Your insults may reveal that this has hit a sore spot for you. We need to be able to talk about these things rationally, and not emotionally.

</comment></comment></comment></comment><comment><USER20> Good.

</comment><comment><USER21> altright was doxxing, which is against the ToS. Doxxing, regardless of who, is generally a bad idea. For background, see the reddit Boston bomber debacle. You're going to get it wrong and end up harassing or harming innocent people.

</comment><comment> et-al Anyone remember when they shut down /r/fatpeoplehate? The hate just spilled to other parts of the site.

I'd be concerned of the same thing happening with this.

<comment><USER22> I think it's too late to worry about the alt-right spilling over into other subreddits. That already happened a while ago.

</comment></comment><comment><USER23> Try a platform that lets you run your groups like you want: www.plumgroups.com.

Setup interest/location based groups and/or install the Chrome extension to comment on every site you visit. Post anonymously or use you Plum Name.

</comment><comment><USER24> Good riddance.

</comment><comment><USER25> Well this should be a sane, civil conversation...

</comment><comment><USER26> Freedom of speech*

*To those who own the presses.

<comment><USER27> The first amendment only applies to the government making rules restricting speech.

Reddit is privately owned and run, so they get to make whatever rules they want.

<comment><USER28> > The first amendment

There's more to free speech than one country's constitution. From the Universal Declaration of Human Rights:

> Everyone has the right to freedom of opinion and expression; this right > includes freedom to hold opinions without interference and to seek, receive > and impart information and ideas through any media and regardless of > frontiers.

<comment><USER29> Then start you're own web site. Do you have unfettered free speech on HN?

</comment></comment></comment></comment><comment><USER30> Who honestly gives a shit? Not me. There are a veritable army of unproductive losers who spend all their time on the Internet. Nearly every occasion where I've seen people complain about "censorship" from a website, it's unproductive drivel from these people.

Good riddance, I say. When productive people don't like their speech being suppressed they create lobste.rs. But these people aren't productive at all. They're useless wastrels, for whom the psychological kick of receiving an upvote from their feeble-minded brethren is sufficient to drag them through the day.

I will continue to use reddit for /r/rust and whatnot and it will be good.

Normally, I wouldn't even enter this conversation but there's this trend where people assume that these worthless fools are the majority simply because they spend every waking hour whining about some thing or the other. And then people act as if they must be placated. When really they should just go away.

</comment><comment><USER31> I don't think they really had much of a choice. It doesn't look good for a media company to allow neo-Nazi content to be posted.

</comment><comment><USER32> [deleted as per incorrect information]

<comment><USER33> "has a reputation" is pretty strong; their CEO did it like 4 times in a few hours. That's not a small thing, but there was appropriate outrage and an apology. Also, breitbart link, really?

<comment><USER34> Well, they do have a reputation for deleting sub-reddits they don't like. It would be better, I think, just to come out and say, "we will delete sub- reddits we disagree with."</comment></comment></comment>


Cataclysm: Dark Days Ahead - <AUTHOR> https://github.com/CleverRaven/Cataclysm-DDA <comment><USER2> Of note is how many contributors and commits there have been, 1,150 and 82,479 respectively.</comment>


21st Century Victorians - <AUTHOR> https://jacobinmag.com/2016/10/victorian-values-fitness-organic-wealth-parenthood <comment><USER2> >>> Of course, exercising, eating organic food, and pushing children to use their spare time usefully are not inherently bad things. However, they become markers of bourgeois values when they are marshaled to assert one class's moral superiority over another and to justify social inequality.<<<

Is this really happening? I mean: "marshaled to assert one class's moral superiority" is this really going on?

I do know middle-class Americans from, let's call it bluntly, both the "red" and the "blue" side of the country and I don't observe this behaviour there at all.

Sure, people can be proud, but trumpeting "moral superiority" because of class?

Can't remember having ever seen that.

<comment><USER3> Yes, it is really happening, but unless you are on the receiving end, the "morally inferior" end, you probably won't recognise it.

In my workplace (in the UK, so the dynamic might be a bit different) there is a strong middle class/working class divide. The middle class people love to go on about their cycling, organic food, etc., and berate others for being "unhealthy" to feel better about their own life choices. Even though many of us from working class backgrounds eat healthily, play 5-a-side football, etc., it's not dressed up in the same way, and not used to assert superiority over the people who (regardless of class) don't exercise and eat well.

<comment> jon-wood That's wonderfully articulated. I've subconsciously seen that behaviour in workplaces for a long time, but never really noticed it as a class division thing - having read this though I can look back and see very clearly that the people constantly going on about their food/exercise/holidaying choices are very much on the middle class side of the divide.

</comment></comment></comment><comment><USER4> Entertaining in much the same way as Veblen's commentary, though without as much hilariously and intentionally poorly-concealed contempt. Perhaps if the author wishes to continue to pursue this particular sort of Bildung, he will expand this piece into a much longer form for us. Just think how well that would display the amount of free time he has! And how much more room would be available to flesh out what must be a very well-developed political argument! I am giddy with anticipation.

</comment><comment><USER5> > These clothes were sending a message: "Make no mistake, we are not walking > or riding bikes for transportation. This is exercise."

I often use a bicycle for transportation, and I've noticed that spandex cyclists won't give me the time of day. This happens even on otherwise deserted streets, where I and the other cyclist are the only two people for a mile. No bell or "on your left" from an overtaking cyclist, no wave of the hand from somebody going the other way, not even an ambiguous nod of the head. It's the strangest thing.

edit: I don't mean to imply that spandex cyclists would actually put bells on their bicycles.

<comment><USER6> It is a pity that English doesn't have the distinction between people riding bicycles and people riding in lycra, the Dutch Fietser vs Wielrenner

<comment><USER5> That's a good distinction -- perhaps I'll start calling them wheel-runners. It might catch on.

And to be fair to wheel-runners, it could be that what I'm reading as haughty disregard is actually the same kind of abstraction one sees in foot runners, a kind of meditative absorbtion in the experience of exercise. This might also explain why they appear unable to see stop signs.

</comment></comment></comment><comment><USER7> As someone who would willingly describe themselves as a socialist, this reads like satire, or, if taken seriously, like a poorly thought out high school history paper.

The author does quite a good job lampooning the modern practices of the (often liberal) elite, but fails abysmally to prove that any of these practices are done "to assert one class's moral superiority over another and to justify social inequality." Without that crucial piece of support for the author's thesis, this article fails to provide any meaningful social or moral commentary about the practices of the modern elite.

In fact, one could argue that the lampooning of the modern liberal elite and their practices, such as the author does in this article, is itself done as way of asserting a different class's moral superiority over another - in this case a socialist intelligentsia's superiority over the mainstream liberal elite.

<comment><USER8> I mostly agree with your take on the article (though I admit I skimmed some paragraphs), but I think this bit was probably intentional:

> the lampooning of the modern liberal elite and their practices, such as the > author does in this article, is itself done as way of asserting a different > class's moral superiority over another

Unfortunately, I think the most effective way to counter a status move is not through reasoned argument, but with a status move of one's own. If you can turn the status symbol into something ridiculous or embarassing, you've successfully undermined it. This is (usually) most easily done via public mockery.

<comment><USER9> Yes and no. You've undermined the _public expression_ of the status move. But pride is all over the place, from things that look like pride, to "I'm not proud like those people, I'm down to earth" \- and proud of it, to (another turn of the screw) "I don't do false humility like those people".

It's the human condition to find someone to look down on to feel better about yourself. You can perhaps make people stop expressing it publicly, but you aren't likely to change hearts very much. (And when you do, you'll most likely make someone realize that having pride in _that_ is stupid, so they'll change to having pride in something else.)

</comment></comment></comment><comment><USER10> Reminds me of [http://www.classmatters.org/2006_07/its-not- them.php](http://www.classmatters.org/2006_07/its-not-them.php)

Which has been applied in tech in [https://www.harihareswara.net/sumana/2016/05/21/0](https://www.harihareswara.net/sumana/2016/05/21/0)

<comment><USER11> Thanks for sharing this. Very interesting so far. "Inessential weirdness" is something I've been thinking about for a while but didn't have a name for.

<comment><USER12> The problem is, what seemed reasonable and essentially weird then, and what seems that way in retrospect, are very, very different. This is a problem for both sides of the coin. What is essential is in the eye of the observer, through the lens of their culture and time. Calling someone's drive 'inessential' is just cast8ng judgement by another name.

</comment></comment></comment><comment><USER13> Although I deeply disagree with Jacobin Magazine's politics I find this article really right on point:

> Today, spin classes, artisanal food, and the college application process > ...make no mistake, they serve the same purpose: transforming class > privilege into individual virtue, thereby shoring up social dominance.

<comment><USER14> I agree that the central point of the article is on target.

The notion that this is somehow a "Victorian" thing, though - that the Victorians have some special responsibility in history for inventing this strategy of social dominance - that's an error.

Humans have been doing this for much longer than that.

<comment><USER15> The Romans and the Greeks wrote endlessly on this topic. Everything Confucius said, too.

Perhaps the only significances of the Victorians was the rise of a middle class and "more" upward mobility. Before it had been "act your class/caste", the one you had been born in, but for the Victorians is was the class you wanted your _children_ to be born in.

But for sure, was an interesting comparison, until the vomit forced into the last line.

<comment><USER16> > But for sure, was an interesting comparison, until the vomit forced into the > last line.

I'm glad that I wasn't the only one who found that to be offputting. What a way to ruin an otherwise excellent article.

</comment></comment></comment></comment><comment><USER17> I also feel I've seen this mentality in play in politics - the core of of bourgeois politics seems to consist of virtue-signaling or name-dropping challenging philosophers.

</comment><comment><USER18> Generally, practices that garner popularity in the middle and upper class have life improving properties, whether physical, social, or mental. That doesn't mean they don't create a class barrier, but that's a consequence of financial means more than anything imo.

<comment><USER19> True, those absurd excesses of conspicuous consumption that do not simulate at least a soupcon of some plausibly life-improving property are seldom flaunted where the other classes may observe, but privacy is itself now one of the essential privileges of the moneyed elite, protected by the same class barriers that lucre's natural owners erect to satisfy their disproportionate need for the life-improving mental feelings of safety and security (from those on the opposite side of the barriers). Any 21st century moralist who does not accept that they are wealthy only in proportion to the number of things that they can do without is a phony.

</comment></comment><comment><USER20> Also see:

* "I don't even own a tv"

* preferred pronouns in Twitter bio

* keto

* wellness/mindfulness

* no straws

* city bikes

In general there is no small amount of pearl clutching to be had to improve your social standing.

<comment><USER21> most of these can be conspicuous or can be practical interventions for something a person needs or wants. See being a vegan because you think eating meat is wrong versus being a vocal vegan because you want everyone to know how much better you are than them. That distinction can apply to everything you've listed.

<comment><USER22> Yeah, I eat keto, but I don't push it on people or think it makes me better than anyone. I'm a T2 diabetic, and it's simply the best way for me to eat to prevent losing my feet or winding up on dialysis someday.

It's not the cheapest way to eat (meat and fresh vegetables are expensive compared to processed carb products (or heck, even nonprocessed carby staples like rice and beans)), so I would never look down on someone that couldn't afford to eat this way. I wouldn't even push it on another diabetic, beyond mentioning that I use it to control my blood sugar and it works well for me.

I think my eating keto is a personal "essential weirdness" to quote an article someone posted elsewhere in this discussion. [1]

[1] [https://news.ycombinator.com/item?id=18403103](https://news.ycombinator.com/item?id=18403103)</comment></comment></comment>


Rust Basics(Gitbook) - <AUTHOR> https://dumindu.gitbooks.io/rust-basics/ <comment><USER2> Thanks for putting this together. I think you did a great job summarizing and explaining things. I've bookmarked this so I can go back and review.

</comment><comment><AUTHOR> I am a Web Developer and just learning Rust. In here I tried to summarize what I learned and time to time I'll update this book. Hope this will be helpful for newcomers like me. Comments are very welcome :)

</comment><comment><AUTHOR> please use [https://www.gitbook.com/book/dumindu/rust- basics/details](https://www.gitbook.com/book/dumindu/rust-basics/details) , if you get 404</comment>


What startups need to know about the "internet sales tax bill" - <AUTHOR> http://www.dangrossman.info/2013/04/24/what-startups-need-to-know-about-the-internet-sales-tax-bill/?wp=1

<comment><USER3> There are some notable imprecisions:

Particular bad: _A business will not be liable for errors in its tax returns if they were prepared by a certified provider. That means no penalties or fees for mistakes._ \-- What the bill actually provides is that a business that uses a certified provider will not be liable for errors "if the liability is the result of an error or omission made by a certified software provider." (Section 2.b.2.E of the bill) The business remains fully liable for any penalties, etc., that are due to errors or mistakes that originate with errors or omissions the business itself makes.

Other notably imprecisions: _There is a "small seller exemption". If you collect less than $1,000,000 a year from out-of-state customers, you will have no new obligations under this bill._ The small seller exemption applies based on remote sales the _prior_ calendar year, so you'll _never_ have any obligation the first calendar year in which you have remote sales, even if you have $10 million in sales out the gate, and you'll never retroactively become liable for taxes for sales earlier in the year as a simple $1 million/year threshold would suggest. OTOH, you also can will liable for remote sales taxes in a year where you have less than $1 million in remote sales, if it is preceded by a year in which you had more than $1 million in remote sales.

 _Online sellers will be required to collect, report and pay sales taxes in all of the states (once the states meet certain requirements), rather than only the states the seller has a physical presence in._ Well, all of the states that (a) have sales and use taxes, and (b) choose to apply them to remote sales. Presumably, all the states that meet (a) will eventually do (b), but not all states have sales and use taxes to start with.

 _Each state that wants "remote sellers" to collect sales tax must establish a single entity to manage tax collection and audits for the entire state. Sellers won't have to deal with all 5,900+ separate taxing municipalities in the country, just 50._ This makes the typical mistake of assuming that there are 50 'states' in the sense used in the act, but that's not correct; 'state' in the bill are defined to include "each of the several States, the District of Columbia, the Commonwealth of Puerto Rico, Guam, American Samoa, the United States Virgin Islands, the Commonwealth of the Northern Mariana Islands, and any other territory or possession of the United States.", so there are not less than 57 potential taxing authorities.

</comment><comment><USER4> Government mandates the creation of a new Intuit to do for sales tax what income tax prep services have accomplished for income tax: create a giant industry based on the artificial engineering of byzantine rules.

Just as every income tax prep service represents someone whose economic energies are devoted to an invented waste process instead of real innovation or human accomplishment, soon there will be a horde of sales tax prep services draining the pool of developer talent that could be expended on big (and real) problems instead.

Fortunately most 'big' problems these days seems to be based around split testing landing pages and sales funnels, so it won't be too great a burden on our society.

</comment><comment><USER5> > Each state that wants "remote sellers" to collect sales tax must establish a > single entity to manage tax collection and audits for the entire state. > Sellers won't have to deal with all 5,900+ separate taxing municipalities in > the country, just 50.

Even in a best case scenario it seems like this is going to involve live access to state "software"/API to keep up-to-date with ever changing municipal tax rates, "tax free weekends", and all kinds of other things that usually only affect physically local businesses.

So states are going to be responsible for keeping their databases up to date and maintaining access to them? What happens when State X forgets to update that County Y had a tax free weekend for Z items? What happens when the server goes down and no one can calculate rates? What happens when it's just really slow and you have to give customers slow page loads in the checkout process?

Even with states and certified providers as middlemen, I'm not looking forward to the implementation of this...

Edit: Thanks, dan, so maybe we'll be able to cache some rates. Though we still may need reliable & quick access to state servers to figure out which rate belongs to each 9 digit address... Hopefully the states can be about as reliable as FedEx/UPS rate querying services, though the odds are at least one state will have some ugly blackouts at some point...

<comment><AUTHOR> States have to provide sellers and software providers with 90 days notice of any changes to their tax rate, then update both their database and their software for computing taxes. This, coupled with the state-wide sales and use tax harmonization requirements (for remote sellers), only local businesses will have to worry about things like "tax free weekends" and short-notice changes. It's still going to be a mess.

</comment></comment><comment><USER6> Is anyone else a little unclear on why it should work this way? If I live in California, fly to New York, and then go on a shopping spree, I'm going to pay the New York tax rates that will end up going to New York. The store doesn't ask me where I'm from, charge me California tax rates, and then send the money to California. That would be absurd.

I also can't claim that, since I live in California, I shouldn't pay any New York sales taxes. I'd be laughed out of the store ("interstate commerce" be damned).

Wouldn't it make more sense for an online retailer to charge their _local_ sales tax rate for _everyone_? Why is this the only option that _isn't_ being seriously entertained?

<comment><USER7> I have one theory as to why: It would penalize online retailers that happen to be based in a high-tax location. As a Chicagoan, for example, I would have a really hard time starting an online retailer if my customers all had to pay the 9.25% Chicago sales tax. It seems like bad policy to discourage tech companies from locating in big cities, which often have higher sales tax. Also, it would be hugely unfair to companies that predate the bill and are based in big cities--are they supposed to pick up and move?

Another reason: The idea of the business's local tax rate is less coherent for larger companies that have multiple bases of operation. Suppose I have several offices throughout the country, plus a bunch of warehouses. Which of these would count as my home base for tax purposes?

</comment></comment><comment><USER8> My question is what happens if a state's API is down? Are the businesses supposed to eat the cost of whatever tax will be charged? Would the transactions be allowed? It seems like a decent idea, but there is potential for disaster depending on the implementation.

</comment><comment><USER9> Where can you find more information about becoming one of these certified software providers? It seems like it could be a pretty easy web service to deploy that once it's up, it really becomes a simple matter of keeping your database up to date which, hopefully, is provided in some sort of machine readable format from each state and preferably in the same format.

Also could be a pretty snazzy way for a company like Shopify or the payment providers like Stripe, to make an extra buck as they'll already implement this for their customers, anyway, and it wouldn't be too far of a stretch to make it a service anyone could integrate with.

</comment><comment><USER10> Is there an api in place to provide tax rates for every jurisdiction? If not, is it the responsibility of the shop owner to keep this updated?

<comment><USER11> From what I understand the state must provide free software to perform the needed accounting, or something to that effect.

An API would be even better, of course, but I suspect the free market will have to do that...

</comment></comment><comment><USER12> Every article I read about this focuses on "online" businesses, but doesn't the current exemption stem from a legal precedent set by a case involving a mail order catalog company? Is the bill Internet specific, or is it just that mail order is such a small market no one is even talking about it?

<comment><AUTHOR> The bill isn't internet specific; it applies to any kind of sale into a state the seller has no local nexus in. That would apply to mail or phone orders as well.

</comment></comment><comment><USER13> TL;DR:

* There is a "small seller exemption". If you collect less than $1,000,000 a year from out-of-state customers, you will have no new obligations under this bill.

<comment><USER14> So if you have 10% margins, which are great to have, once you start bringing home 100K a year you're in the soup with everybody else.

<comment><USER15> I'm not sure if you're in the US, but sales tax here differs from other parts of the world. The buyer expects to pay sales tax as a separate line item. It is added to an order, rather than included in the price of an item, so this wouldn't have any effect on margins. You would have the additional overhead of tracking and collecting sales tax, however. That will have a negative effect on margins, but as an indirect operating expense rather than a direct cut from sales.

<comment><USER16> It will affect margins, because now you have the costs of this extra complexity in your accounting, or you have to pay a service provider to handle it for you.

</comment></comment></comment></comment><comment><USER17> Seems like a good business opportunity for someone to open a software-selling business in all 50 states, take .5% of sales plus add necessary tax depending on buyer address and deal with the sales tax. I really hope it doesn't come to this. If states are that desperate wouldn't a flat-rate federal tax cover it and distribute it evenly?

<comment><USER3> > Seems like a good business opportunity for someone to open a software- > selling business in all 50 states, take .5% of sales plus add necessary tax > depending on buyer address and deal with the sales tax.

You'll need to compete with incumbent providers, including Intuit's TaxCloud, that do this _free of charge_ (for retailers, they do get money from the states) for multiple states. (Currently, only for the 24 states that are part of the Streamlined Sales and Use Tax Agreement, but under the terms of the new bill, those would be the exact states that would be qualified to collect remote sales taxes without doing much new; certainly, those same incumbent providers are going to be adding support for new states as soon as they start either joining the existing Agreement or meeting the requirements, including establishing certification procedures for software providers, under the new bill for states that aren't part of the Agreement.)

</comment></comment><comment><USER18> Have any payment processors announced plans to get into this? I'm already talking to a payment processor to charge credit cards, so if they added a tax calculation API it would almost certainly be easier for me to integrate that into my systems than it would be to deal with some totally separate tax calculation service.

</comment><comment><USER19> Someone with more tolerance for regulatory BS than me should be working on a Saas app to manage this new complexity.

<comment><USER3> There's already big players in this field, because it leverages what many states have already done under the Streamlined Sales and Use Tax Agreement. See, e.g., Intuit's TaxCloud <https://taxcloud.net/tour/>

That's not to say there isn't room to _disrupt_ , but even though the bill is new, the field of software/services is not new, and its not an empty field that new entrants get to _define_.

</comment></comment><comment><USER16> I'd like to follow the lobbying money trail on this and see if it leads back to someone like Intuit who is now going to be peddling their "one stop shop" service for this, for only a 1% service charge on the sale amount.

<comment><USER20> Maybe states will pick up the cost of the tax rate info aggregation. The FAQ from TaxCloud is pretty interesting:

 _As a Certified Service Provider, we are compensated by participating states for providing TaxCloud to retailers._

<https://taxcloud.net/tour/faq/>

Also note that they say they rely on Amazon EC2.

</comment></comment><comment><USER21> This proposal sounds like a very reasonable and fair system.

What's the catch?

<comment><USER22> States strapped for revenue often take a 'guilty until proven innocent' attitude towards taxes - first you file your taxes, then they claim you screwed it up and owe them money, then you waste your time proving you did it right in the first place. They aren't particularly competent, either - <USER2> they make mistakes.

Now you roll the dice each year and see if your state government happens to be rapacious or incompetent - sometimes you're lucky, sometimes you're not. After this bill passes, you'll get to roll the same dice fifty consecutive times.

</comment></comment><comment><USER14> If anybody is interested, for contrast I had a nice rant on this topic this morning. [http://freedom-or-safety.com/blog/why-the-internet-sales- tax...](http://freedom-or-safety.com/blog/why-the-internet-sales-tax-is- wrong/)

ADD: "Since integrating 50 different software packages into every online store, filing 50 different sales tax returns, cutting 50 checks, and getting audited by 50 states is not an appealing idea to most small businesses, they're almost guaranteed to pay a certified software provider to handle it."

I'm a little confused. As I understand it, there are over 9,000 various jurisdictions -- down to the zip code+4 level that implement various forms of sales taxes. You can be on one end of a street and pay a completely different tax than you would on the other.

<comment><USER23> You make a very excellent point concerning virtual goods above all else. That one point specifically concerns me. I should read the bill to see if virtual goods are explicitly exempted, or classified as a taxable item. Of course, one could argue about whether or not such 'virtual' goods exist--if they didn't, we wouldn't be able to talk about them.

Regarding your other points, the bill requires all tax collections to go through a single entity for each taxing state/territory. You don't file taxes with every jurisdiction.

<comment><USER3> > That one point specifically concerns me. I should read the bill to see if > virtual goods are explicitly exempted, or classified as a taxable item.

The bill doesn't address what goods are taxable; those are set by states. The bill simply sets the conditions on which states can extend the sales and use taxes they collect on goods sold by vendors within the state to goods sold into the state by remote sellers.

<comment><USER23> Good to know. I figured it'd be that way. Still seems like wholly non-physical items could become a pain point.

</comment></comment></comment></comment><comment><USER24> Is the $1M threshold per state or overall?

Do you tax a customer based on shipping address or billing address?

<comment><AUTHOR> > Is the $1M threshold per state or overall?

It's the sum of all sales to customers in states where you have no local nexus during the previous year. One of my bullet points summarizes the rule for determining the taxing locality; shipping address has priority over billing address.

<comment><USER24> Great to know. Thanks Dan.

Time to setup my Oregon-based (no sales tax) package-forwarding startup!

</comment></comment></comment><comment><USER25> How does this compare to the European VAT system? (Which has its own rules about purchasing between EU states.)</comment>


The Greatest Myth About the Robotics Industry - <AUTHOR> http://spectrum.ieee.org/automaton/robotics/industrial-robots/the-greatest-myth-about-the-robotics-industry

<comment><AUTHOR> Despite popular perception that robotics companies require huge amounts of capital, public financial data shows that robotics companies are just like like software or biotech. That is, they are capital efficient and suitable for VC investment.</comment>


What IBM Pays H-1B Software Engineers and Developers - <AUTHOR> https://insights.dice.com/2019/10/15/ibm-h-1b-software-engineer-pay/ <comment><USER2> Throwaway account. I've been with Amazon as an engineer for about 7 years now. We call ourselves diverse but really all we have are Asian (Indian and Chinese) devs... in some engineering orgs, white people outside of management are a minority (although it's not just white managers, there's tons of Indian managers too).

We have very few black people in engineering roles. I don't know a single black engineer at this company to be honest and I've been here 7 years and interface with lots of other teams.

I don't think the Indian or Chinese devs get paid less. The one data point I do have (anecdotal) is that every Indian dev I've met is generally on a spectrum between unhappy to extremely unhappy, and they're only in their role because it's very difficult to find another company that will sponsor you. So you either keep your mouth shut or risk getting let go and have to leave the country:

Amazons work culture is pretty shitty in many orgs - very cut throat. I've never seen the more horrific examples from the NYTimes article years ago about people crying at their desks, but I've been in enough contentious meetings and have seen people purposely set up to fail by their managers so they could be managed out because politics.

<comment><USER3> This has been discussed many time in HN. Indian and Chineese H1Bs can keep complaining or they can immigrate to Canada with Express Entry system which levels the playing field. Business will soon follow. I made the switch and it has improved my life and career in many wonderful ways.

One sad thing I see though is they consider Canada as Plan B. They will get their permanent residency visa but will still stay in US.

<comment><USER4> What I've heard is that Canada pays significantly less for Software Engineering talent than the US does. True?

[https://www.payscale.com/research/CA/Job=Software_Developer/...](https://www.payscale.com/research/CA/Job=Software_Developer/Salary)

<comment><USER3> Not significantly, but less. I get the double of that avg salary mentioned in that link. (I am a 10 years exp dev)

But I think the salaries will go up as more US companies setup shops here as the talent pool rises because of economic immigration.

I consider the pay ok because I get healthcare for free, do not have to worry about my visa, childcare is cheaper, spouses can work, my Canadian equivalent of 401k will not be lost like when I was in US on H1B. If I ever want to work in US, I can work on TN visa too.

It also depends on what you want. I opted for certainty and a good family life over the money.

</comment></comment></comment></comment><comment><USER5> The article concludes that it pays H-1B employees fairly, but the data shows that the median H-1B engineer at IBM makes below the median salary for Software Engineers in the US. Clearly if IBM can't find enough US talent, it's because they aren't willing to pay the market rate.

H-1B is supposed to be for highly skilled employees. You don't pay highly skilled employees less than average.

<comment><USER6> It's more interesting to sort the source data by salary, ascending. IBM has quite a few more "developer" titles than Software Engineer and Software Developer, and many of them pay quite poorly.

The median for "Application Developer" is $77K with a low of $48.5K.

[https://h1bdata.info/index.php?em=IBM&job=&city=&year=2019](https://h1bdata.info/index.php?em=IBM&job=&city=&year=2019)

<comment><USER7> I can tell you exactly where that low is, because that's what they offered my Canadian cousin in Baton Rouge with an American CS degree before he told them to pound sand and went back to Canada to get his MSCS in Alberta. He has a much better job with Warner Music in Toronto now.

</comment></comment></comment><comment><USER8> The last section is eye opening for me. This is what the total compensation looks like for entry-level software engineers:

Apple: $160,548

Microsoft: $155,775

Google: $188,086

IBM: $95,857

The IBM total compensation does not even have 6 digits! No wonder they have a hard time attracting talent.

It would have been interesting to see the numbers for Amazon, Facebook and Netflix too.

<comment><USER9> Link is blocked from my work. Google: $188,086? For a entry level software engineer? What the hell

<comment><USER10> Presumably Google's "entry level software engineer" at least on paper is a more advanced position than equivalent titles at other companies. We all probably know "experienced" programmers who wouldn't even make the cut.

</comment></comment></comment><comment><USER11> Companies like Google, Microsoft, Facebook etc. pay H-1B workers extremely well. I'd expect IBM to be somewhere in the middle of the pack (and it seems like they are).

If you want to find actual abuse, look up all the "consulting" companies that file tens of thousands of applications every year at the tech equivalent of minimum wage - TCS, Cognizant, Wipro, Infosys, Deloitte, HCL, Accenture, Mahindra.

<comment><USER12> > If you want to find actual abuse, look up all the "consulting" companies > that file tens of thousands of applications every year at the tech > equivalent of minimum wage

I've seen it first hand while working in Telco's who hire those types of companies.

</comment></comment><comment><USER13> I've always believed that if you want to see a person's true colors, look at how they treat people poorer or otherwise socially weaker than them. In other words, if your date is charming to you and nasty to the waiter, run like hell.

The same applies to companies: there's no better way to cut through the recruiter nonsense like checking out how treatment of H1-Bs compares to treatment of citizens and green card holders.

A personal anecdote: a friend of mine who is on an H1-B works for a bank. This bank talks a great game about culture and working conditions and liberal social programs and opportunity and whatnot. How do they treat my friend? She makes forty percent below market rate for our area, and their policy is she has to work for them for _five years_ before they even _start_ the green card process for her. Meanwhile complained like Google and friends typically start the green card process immediately upon hire.

Anyone who looks at their promotional material (who isn't already disinclined to trust a bank) would come away with the impression that this institution is some sort of paradise of opportunity and career advancement. Meanwhile anyone who's worked for them for any appreciable length of time knows that isn't true.

</comment><comment><USER14> Honestly......it's higher than I was expecting.

</comment><comment><USER15> Wowzers...I should have majored in H-1B Software Engineering. Any good tutorials out there?</comment>


Nuclear boy scout builds a nuclear reactor in a shed - <AUTHOR> http://www.youtube.com/watch?v=c8HTm_qhSBo

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

<http://news.ycombinator.com/item?id=611583> <\- This one has comments.</comment>


Ancient Rome's Hexagonal Port City - <AUTHOR> http://earthobservatory.nasa.gov/IOTD/view.php?id=85488 <comment><USER2> [http://en.wikipedia.org/wiki/Portus](http://en.wikipedia.org/wiki/Portus)

</comment><comment><USER3> A close up (Google Maps) [https://goo.gl/maps/IE3NH](https://goo.gl/maps/IE3NH) There are some pictures in the imagery at the bottom of the page. If you explore the map you'll see the channel from the Tiber river to the sea the article writes about. It's used as a harbour for sailboats and motorboats.

</comment><comment><USER4> The Lago Traiano covers 97 acres. By way of comparison, the largest dock in London is the Royal Albert Dock; that was opened in 1880, and covers 87 acres.

Although because it has a more sensible shape, the Royal Albert Dock provides 3.1 miles of wharf front, whereas the Lago Traiano only provides 2.3.

</comment><comment><USER5> Flew out of Rome a few years ago...very cool seeing this hexagonal lake and knowing it is nearly 2000 years old.

</comment><comment><USER6> It reminds me of the circular port of Carthage which was build hundreds of years earlier.

<comment><USER7> That's what I was going to post. If anyone finds themselves with some spare time in the area, check out Tunisia, it's really packed with interesting historical sites. I was there for a month during the revolution (ie. start of the Arab Spring) and the people were always very nice, not once did I feel any anti-foreign sentiment: great country, pity about the dictator!

</comment></comment><comment><USER8> A hexagonal port city? I wonder if it was a wood port? Maybe a 3:1 port though.

</comment><comment><USER9> See also: [https://news.ycombinator.com/item?id=9172111](https://news.ycombinator.com/item?id=9172111)</comment>


Special Pledge for Hacker News Readers on iOS Course [kickstarter] - <AUTHOR> https://www.kickstarter.com/projects/214306041/learn-to-develop-ios-applications-for-the-iphone-i/posts/811720

<comment><USER2> This post was gamed by sockpuppets which are now all banned. We have also banned the submitter, at least until we get a promise that this will never happen again.

All: Doing this is one of the surest ways to get yourself banned from Hacker News.

</comment><comment><USER3> Done deal. How long is this offer on for?

<comment><AUTHOR> I hadn't thought of a time frame, should I?

</comment></comment><comment><AUTHOR> Please upvote :)

</comment><comment><USER4> oooo great (:

<comment><AUTHOR> Glad you like.

</comment></comment><comment><USER5> cool

<comment><AUTHOR> Glad you like.</comment></comment>


The Largest Anonymous Site: Craigslist. - <AUTHOR> https://medium.com/on-startups/e8d64480ffde

<comment><AUTHOR> would love to hear more examples.</comment>


Ask HN: Semi-technical co-founder? - <AUTHOR> What would you call a guy that knows hows things work and can ask for specific things to get done but can't write a lick of code?  Non-tech or semi-tech? <comment><USER2> Three off-the-cuff options based on your vague description:

1) Designer

2) Marketer

3) Management Consultant

Taking a step back, it feels like this question is being asked without a clear understanding of the underlying "why". Could you elaborate further?

<comment><AUTHOR> Just trying to find out where the tipping point might be between technical and non-profit technical....And if there is a middle ground between the two.

</comment></comment><comment><USER3> Could you give an example of asking for specific things to get done? I think that the level of specificity and clarification of dependencies there makes the difference.

<comment><AUTHOR> Probably more like "On the title, we'll probably have to prevent clicks on it to improve UX"

And not "Use css pseudo elements :after to provide the correct bookmarklet title."</comment></comment>


Ask HN: What HN post or comment most influenced you this year? - <AUTHOR> Thank and share time :) <comment><USER2> [http://www.math.tamu.edu/~cyan/Rota/tenlesses.pdf](http://www.math.tamu.edu/~cyan/Rota/tenlesses.pdf)</comment>


Prevent brute force attacks on SSH servers with DenyHosts - <AUTHOR> http://www.unixmen.com/linux-tutorials/309-prevent-brute-force-attacks-on-ssh-servers-with-denyhosts-

<comment><USER2> My favorite method to prevent brute force attacks is to disable password-based logins all together.</comment>


Ask HN: How do you manage older employees who report to you? - <AUTHOR>

It is obviously not very uncommon to be 32 while your direct report is 55. Those of you in situation like this, how do you manage it ? A very generalized question of course but just want to hear your stories/ideas/experiences. Also older employees who are direct reports to someone younger, feel free to tell your side of the story too. <comment><USER2> I'm close to 55 and have no problem reporting to someone much younger and have done this on numerous projects. As long as we have mutual respect there's never a problem as we both have the same goal completing the project successfully. There are a few things though I don't have in common with the younger generation (e.g., video games) but I make up for that with my "in my day" stories about life before the internet.

</comment><comment><USER3> Simple: With respect and value them. Kinda like every one else.

</comment><comment><USER4> The same as you would anyone else.

</comment><comment><USER5> Try to develop a rapport with them where you can joke around and talk shit to them. But overall - there might be some who won't want to ever work with you, and that's not your fault. All you can do is work with the one's who do want to work with you, treat them like gold, and most likely, the other ones will come on board over time. That goes for everyone who reports to you.

Work with the ones who do want to work with you, do good work and let upper management know about it, and wait for the other ones to get on board.

</comment><comment><USER6> Assuming you actually are competent, this is a non-issue. I reported to someone younger than me for five years. No big. Seriously.

</comment><comment><USER7> By treating them like, you know, human beings?

</comment><comment><USER8> Exactly the same as anyone else. If they have a problem with that then it's _their_ problem.

</comment><comment><USER9> It's not like you are a teenager, both of you have enough experience in adulthood.

</comment><comment><USER10> You can get more technical detail on these CALEA backdoors by Googling around for "cisco CALEA". The Cisco 6500 CALEA configuration guide is great. Several documents from several vendors are publicly-findable.

Here's one example to get you started:

[http://www.cisco.com/en/US/docs/voice_ip_comm/bts/4.1/comman...](http://www.cisco.com/en/US/docs/voice_ip_comm/bts/4.1/command/guide/CALEA.html)</comment>


Ask HN: What's the state of Python web frameworks in 2015? - <AUTHOR>

Hey HN,
I'm currently starting on a new project, and the last time I thought about different Python frameworks, it was 2011. It was a different world: Python3 was well and truly scary, Pylons / Pyramid was confusing, and for some reason, nobody I knew had heard of Flask.
I was a full-time Python programmer for a few years, but I got distracted in the last couple of years doing sales and marketing. As a result, I lost touch with a lot of trends and hipness in Python. Can you help me figure out what's changed and/or what's worth considering that might not be on various projects home pages?
Here's some of the bounds I'm working with:
- I think it's time for Python3, so that's what I'm rolling with.
- I LOVE LOVE LOVE SQLAlchemy. So, whatever I pick, I'd like SQLAlchemy to be a 1st class citizen in that world.
- I believe in monolithic first. Yes, at some point, I'm sure this will be a bunch of microservices. But right now, there's only me. And...
- The web app isn't the only thing here. I'll be writing a bunch of code that's not framework-specific or even web-facing, and I'll tie that into the web framework to display it.
For no particular reason, I'm leaning towards Flask. I've worked with Django, and it's a little overbearing for my taste.
What should I know? Links to any recent comparisons that you think are well-considered would be incredibly appreciated.
(PS Are you in the Bay Area and want to think about marketing data and visualization? Ping me: firstname.lastname@example.com) <comment><USER2> I would say go with Flask specially based on some of the things you said. Let me elaborate:

\- SQLAlchemy. Flask integrates very well with SQLAlchemy and has a great extension for it as well (Flask-SQlAlchemy).

\- "code that's not framework-specific ". Flask is a winner here being micro and you can even build lovely APIs on top of it.

\- Even though core flask is minimal by design, it now has a matured ecosystem of awesome extensions that lets you rapidly build apps as you need. The beauty is that you are not restricted to one specific way of doing something. Flexibility but that also means you have to make more decisions.

Django is great as well but like you said, it is a much bigger framework and more opinionated. Nothing wrong with it but for building large applications, I prefer Flask due to its micro-ness and flexibility.

<comment><AUTHOR> Cool, glad to hear I'm not crazy. Thanks!

</comment></comment><comment><USER3> If your design is a Single Page WebApp + Backend API I would recommend you to take a look at The Falcon Framework ( [http://falconframework.org/](http://falconframework.org/) ).

      - it certainly integrates with SQLAlchemy
      - it's a small codebase you can navigate quickly
      - it's a Rackspace community project
      - it's fast and well tested

Flask is also a good choice since it's popularity ( which leads to lots of plugins and a more stable code).

<comment><USER4> Falcon seems interesting. But why did specifically mention about Single Page Web App?

<comment><USER5> probably because falcon is for building APIs which are a workable pattern with a single page app which has a thick client and treats the server only as an asynchronously returning data store.

</comment></comment></comment><comment><USER6> Being that Django isn't to taste and you love SQLAlchemy (I have the same biases), I reckon Flask and Pyramid would be the best choices these days.

They are both non opinionated frameworks that do well with bringing in external code. I think both frameworks have opinionated/specialised 'metaframeworks' (eg Kotti or Eve) available though for those that don't want to make too many architecture or library choices.

If I had to differentiate between Flask and Pyramid, I would say that Flask has a slight edge for getting projects up and running while Pyramid is a bit better for projects that will grow and increase in complexity.

Or another way, Flask leans towards just getting stuff done (Hackers) while Pyramid leans towards enabling clean architectures (Software Engineers).

But there is a huge overlap in those characterisations - Pyramid is still great for getting stuff done and Flask is still great for cleanly architecting stuff.

Flask seems to be better known though and have more users, while Pyramid seems to have better release momentum lately. Those are probably the few objective advantages either has over the other.

<comment><AUTHOR> Interesting to hear about Pyramid. I'd always gotten the feeling that Flask was a bit lighter-weight.

I think I'm going to steer clear of Pyramid because 1) I worked with it before, and want to try something new-ish and 2) I ended up fighting with a bunch of the defaults in Pylons / Pyramid. I think they got more sane over time, but I get the feeling that Pyramid devs and I would get along, but do things like finish each others sentences with the wrong thing. "Do you know what would go perfectly with this dinner?" "Yes, beer!" "... er, I was thinking coke. But, yeah, beer would work, too, I guess."

If nothing else, I'm glad to hear those two are the top of your list. I'm feel like I "get" what both of them want you to do, which helps me (personally) a ton.

</comment></comment><comment><AUTHOR> Cool, thanks for the thoughts. I'm going to go with Flask: my 24-hours-in opinion is that I can work with this, and it's got enough community support to make the easy things easy. I haven't done logins or much more with sqlalchemy- flask, but they seem good.

I'm a little worried the flask plugins are thin. As with anything where you have lots of flexibility, you can stub your toes if you don't know the "right" way to do it. For example, I tried to use flask-assets and pyscss to compile sass, but I found a bug in pyscss pretty quickly and had to back out and switch to the Ruby implementation of sass. Not ultimately a big deal, and the whole thing was up and running in about 3 hours.

EDIT: Ugh, more pain with Flask plugins. Flask-SQLAlchemy assumes you're going to declare models that won't be used outside of the web context ... so you can't separate your models from Flask. Annoying! Getting fixed here: [https://github.com/mitsuhiko/flask- sqlalchemy/pull/250](https://github.com/mitsuhiko/flask-sqlalchemy/pull/250)

So, anyway, that's what I'm going to do! Thanks for all your input!

<comment><USER7> Well there are work around options to the restriction with SQLAlchemy that you mention here.

You can use SQLAlchemy core instead of ORM and write your models independent of web context.

Check out [https://github.com/gouthambs/flask- blogging](https://github.com/gouthambs/flask-blogging)

for example!

</comment></comment><comment><USER8> I would stick with Django. It has matured significantly in the past few years, and you don't have to write a single Django form/view if you don't want. DRF and the Django ORM are great , integrate with your own non-Django Python code and other backends as you wish.

<comment><USER4> But OP likes SQLAlchemy. SQLAlchemy and Django doesn't go well together.

<comment><AUTHOR> Yeah, I don't think I can go Django. The ORM works well enough, but SQLAlchemy is my jam.

</comment></comment></comment><comment><USER9> Flask or Django would be good options.

Django is very modular so you can pull out or change the bits you do not like (templating you can use jinja, orm you can exchange for sqlalchmey).

Flask, you build what you want (enough said).

<comment><USER10> If you are removing Django templating and ORM, it makes completely sense to use something else.

Flask is an awesome option, I'm building things with it for some years now.

</comment></comment><comment><USER11> Use flask but also keep django with you. Sometimes django may come handy working with big-scaling enterprise webapp.

</comment><comment><USER12> How is web2py doing?

<comment><USER7> I tried web2py a little bit. I liked the fact that a lot of basic things get setup initially. But all the globals confused the heck out of me. Couldn't quite understand the right way to test. It could be just me though!

I am happy using Flask these days!

<comment><USER12> Agree about the globals - for something that's touted as quick and easy for beginners, I spent an inordinate time in the docs due to all the automagic features. Customizing something like a form outside the automagic prescription is also a non-intuitive pain.

That said, there are many things I do like about it. Mainly that it's out of the box for App Engine, unlike Django, and its web-based IDE built in.</comment></comment></comment>