Google is about to launch a Gmail Web Redesign - <AUTHOR> https://techcrunch.com/2018/04/11/google-is-about-to-launch-a-gmail-web-redesign/ <comment><USER2> Can we just agree to throw wads of cash at Thunderbird so that we can have an e-mail client that isn't dependent on Google's whims (both for good and for ill)? I like some of the features of Gmail (i.e., labels), but I'd prefer that we as a society try to move back to a more provider-agnostic internet.

<comment><USER3> Feel free to put your money wherever you want. We're not stopping you from funding Thunderbird development.

...we're just gmail users because, however sadly, it's still the best damned mail client on the planet. Nobody's even come close since 2004. Everyone's had plenty of time to write a replacement - nobody has because email is a terrible technology and it's a thankless chore to work on/with.

<comment><USER4> I've always used Mail.app with almost no issues, what makes Gmails web app superior?

<comment><USER3> 1) I'm not always on a Mac. In fact, I'm most frequently _not_ on a Mac. And even on my Mac laptop, I spend my day in Linux VMs and interact with few pieces of Apple-native software. An email client I use _must_ be portable, and web software is preferred since, well, nobody wants to write Linux client software anymore (or if they do, it's just an Electron app, which at that point I'm better off using a web version anyway).

2) Filtering and categories are still unparalleled, a decade on. Nobody's even come close to the power of Gmail's tagging and filtering. (Seriously, if you want to see just how bad the competition is, fire up Outlook Web Access and try to create some, even really basic, filters. You'll commonly end up with multiple copies of emails or broken read-state tracking, broken threading, etc. I'm forced to use OWA at work and it's excruciating to the point where I simply don't use their filters at all and deal with Inbox Hell by searching alone.)

3) Searching. Gmail's search engine doesn't seem to have suffered as badly as Google's main search has over the years, and as so it still remains incredibly powerful for "power users" like myself. By comparison, OWA's searching feels like something a CS student would implement in class to check a box on a requirement list.

<comment><USER5> The first item makes your point clear. But personally I don't understand why people would use web Gmail over something like Airmail, Spark, etc — modern clients with advanced features and search. And you can still set up filters in the web version if you need any additional.

<comment><USER6> I got excited and googled the email clients you mentioned...and then learned they are Mac/iPhone/iPad only.

And that's why I'm on Gmail.

</comment></comment></comment></comment></comment></comment><comment><USER7> Very excited for this. When "Inbox" came out I was excited for a lot of the modern amenities but it was so dumbed down from gmail and missing a lot of core features, that ultimately switched back to using the classic Gmail interface, even though it hasn't received much love in a while.

Since they have a separate Inbox product, hopefully they will be able to refresh it with all the new modern bits, without removing any of the advanced power user functionality we have all come to love and relay on.

<comment><USER8> I'm betting themes goes away, since Gmail is the only Google interface that's unevolved enough to let users actually pick the way they want their client to look.

RIP dark themes.

<comment><USER9> In that case you can still use custom CSS / user styles.

<comment><USER8> I did this for a while to cope with some of Google+'s redesigns, and came to realize that you end up in a constant battle of dealing with your custom CSS being broken by updates and changes to the website, and that you are better off just suffering through what a given website wants you to use, if you're going to use it at all.

</comment></comment></comment></comment><comment><USER10> We use G Suite at work and I'm not a fan of the new calendar design. Material design works nicely on a tiny phone screen but on a 32" 4k display it just seems like there's a lot of unused space. That's probably the ridiculous size of the panel, to some degree, but frankly, I just don't think Google's done a great job of designing desktop user interfaces that aren't search.

For folks interested in avoiding your email provider also being an advertising company, I switched to Fastmail* last year. They've got gmail import and full IMAP push support (something gmail canned years ago).

I'd also love to see other hosted alternatives to gmail. I looked into rolling my own on EC2 but decided I didn't have the expertise to do it "right"

* [https://www.fastmail.com/](https://www.fastmail.com/)

<comment> david-cako What is fastmail's sell other than their webmail interface? Seems very expensive to me. I pay $15 a year at mxroute for unlimited domains and users.

<comment><USER10> I don't ever use their webmail, to be honest. I've got native mail clients on my devices that I connect to Fastmail with IMAP. To compare apples to apples it seems most relevant to compare storage tiers, MXroute is 5/month for 20gb, Fastmail's 5/month plan is 25gb (but single-user only).

I personally don't really want to deal with cPanel, too. Not because cPanel isn't cool, but because I explicitly wanted to pay somebody to do the management for me so I didn't have to get too in-the-weeds. I'm certain I'd misconfigure something somewhere and I just don't want to deal with that.

EOD it seems mostly like personal preference and how much you want to tinker. Value for both seem close to the same.

<comment> david-cako Ah, maybe I have a pretty hot promo deal then, I've got unlimited at mxroute.

I've also read mxroute's writeup on why they use cpanel, and apparently it just made sense to use it for user configuration, and that under the hood it's all a very unusual setup (I don't understand enough about email to be honest).

</comment></comment></comment></comment><comment><USER11> Sorting columns would be nice! That's about the only missed feature.

I hope they don't add more dead white space like they did when rebranding from the old blue design to the current red.

Edit: oh god, I read on that article they want to merge Gmail and Inbox and the white space in Inbox is freeking horrible. Why? Why do this? I had looked at Inbox briefly and thought to myself no way. I can see 8 email in Inbox and 21 in Gmail today. One email in inbox has embedded spammy ad pictures that absorbs 3x the normal amount of space.

[https://inbox.google.com/](https://inbox.google.com/)

<comment><USER11> Further edit to the edit:

Ran across an article with better images of the redesigned GUI. First glance, it looks good. Compact display of information, balanced interface controls, better coloring scheme. That all said, proof will be in the pudding~

[https://arstechnica.com/gadgets/2018/04/gmail-com- redesign-l...](https://arstechnica.com/gadgets/2018/04/gmail-com-redesign- leaks-looks-pretty-incredible/#p3)

</comment></comment><comment><USER12> I'm excited to discover which current Gmail features Google will deem surplus in this re"design". That seems to be the trend when a new look is rolled out.

<comment><USER2> I'll bust out the popcorn when threads like this [1] start popping up and people complain until Google locks down posting.

[1] [https://productforums.google.com/forum/#!topic/calendar/xd-5...](https://productforums.google.com/forum/#!topic/calendar/xd-5-vDxUNY)

<comment><USER13> I never knew that feature existed, and now I wish I'd have used it :/

</comment></comment></comment><comment><USER14> I'm looking forward to the redesign, but if you're a power user and want vim/emacs-like productivity in email, it's going to be very hard for Gmail to beat Superhuman ([https://superhuman.com](https://superhuman.com)). Ping me if you'd like to get bumped to the top of the access queue. Email in profile. Not affiliated with them; just a happy user.

<comment><USER15> That page somehow neglects to say what the product _is_ (email client? web service?) and also makes impossible claims ('Undo Send').

<comment><USER16> We're an email client (currently web, macOS, iOS) to help you do your email twice as fast :)

<comment><USER15> Thanks, that might actually be interesting. (I fear I'll have to retire Eudora _eventually_.)

</comment></comment></comment></comment><comment><USER17> If this is true I wonder whether this kills Inbox. I prefer Inbox over the Gmail interface and use it exclusively. I have an iPhone X and 5 months later, the Inbox app has not been updated for the iPhone X screen, I think it's the only Google app I have that hasn't been.

<comment><USER8> Since Inbox was a failed attempt at a Gmail redesign, my guess is that it will go away if the new one doesn't send people running and screaming for the hills.

<comment><USER17> I think Inbox is great, why do you say it's a failed attempt? I don't think it tried to replace Gmail, it's it's own thing.

<comment><USER8> It was intended to replace Gmail, and they halted doing so because even their own employees revolted: [https://techcrunch.com/2014/11/16/why-did-google- decide-to-s...](https://techcrunch.com/2014/11/16/why-did-google-decide-to- split-inbox-from-gmail/)

This is probably why Gmail is nearly the last Google product that looks like it did in the 2000s: they had to start over.

</comment></comment></comment></comment><comment><AUTHOR> Update: A Google spokesperson has provided the following statement (emphasis included): "We're working on some major updates to Gmail (they're still in draft phase). We need a bit more time to compose ourselves, so can't share anything yet—archive this for now, and we'll let you know when it's time to hit send."

As quoted on: [https://techcrunch.com/2018/04/11/google-is-about-to- launch-...](https://techcrunch.com/2018/04/11/google-is-about-to-launch-a- gmail-web-redesign/)

</comment><comment><USER18> The first three items in your inbox will now be "Sponsored Email Placements", with organic email showing up underneath.

</comment><comment><USER19> I wonder if they will keep the "Basic HTML" view.

</comment><comment><USER20> Just when I needed just a slight push to finally migrate away from Gmail to own mail server. Thanks Google! :)

On a brighter side, basic HTML version still works very well in Gmail, hopefully that won't be broken with the redesign.

</comment><comment><USER21> I really hope they don't get rid of the option to turn conversation view off. For me, conversation view adds in a lot of clutter that makes it difficult to see the message, plus lots of inline and collapsed-by-default content.

I'd really like the ability to see what emails I've replied to (with conversation mode off), but pessimistically I'd expect we're getting mostly unneeded aesthetic changes and functionality regressions.

<comment><USER22> The options around conversation view are not only staying, but they're being built into the phone apps as well.

</comment></comment><comment><USER23> I wonder what Inbox would do? I have been using Inbox though it is not doing great! Sometimes i need to switch to the Gmail in order to get things done.

</comment><comment><USER24> For me the only thing that needs to be fixed is that when my mouse ever so briefly glances over a contact in the Hangouts pane as the cursor traverses to the other monitor, that contact's card pops up and stays up indefinitely, looking at me. If it could never do that I'd be happy.

Otherwise the gmail interface doesn't really need any improvement. It's email. there's not much special about it.

</comment><comment><USER25> Very interested in this. I use inbox for personal emails but find it lacking in many areas- most of all is lag and slow response.

</comment><comment><USER26> Let me guess, it will follow the Google tradition of making it painfully slow or resource intensive to use on Firefox.

</comment><comment><USER27> oh god please no.

anyway airmail (app) is decent so maybe time to go back to a local client.

</comment><comment><USER28> I wonder if this also has something to do with their planned support for AMP in Gmail. If yes, then this might get tricky ...

<comment><USER8> Gmail already does dynamic content over email in the case of a first party service: Google+. It's unlikely a design refresh has anything to do with Google's intention to proprietarize email.

</comment></comment><comment><USER29> hopefully not as bad as the last one... reverting back would be an upgrade...

Maybe this time they will decide to hide the TO field?

</comment><comment><USER30> Prepare yourselves for _even more_ whitespace and _even larger_ typefaces. It's the Material Design Way.

(Let's not forget the current Gmail had a big design update that added lots of whitespace a few years ago.)

That update from a reader who witnessed a Googler dogfooding the new UI was interesting:

'"It was a hybrid of Gmail and Inbox," he told me. "The left-side column was more like inbox.google.com and the right side was an _enlarged version_ of Gmail.'

Let's just hope they don't repeat the Google News redesign; forcing the content column to be fixed width. I'm looking at the new Material Design Google News right on a 40" 4k screen, the column with actual news items is like 30% of the width of the screen:

[https://imgur.com/a/EQY8Q](https://imgur.com/a/EQY8Q)

Edit: Eeek. I just tried inbox.google.com. It behaves pretty much like the new Google News in terms of layout. I think this is what we can expect.

<comment><USER31> Yeah, my biggest fear is that they will take away the "compact" display settings in favor of something more design'y.

The first thing I do on any new phone is make the text size as small as possible so I don't have to scroll so damn much.

<comment><USER32> These redesigns always scare me because the come with a loss of functionality

I distinctly remember when Google Maps underwent Material Redesign. I traveled around Scotland for over a week pre materialization and Google Maps was a fantastic tool for navigation. Post materialization I went on a trip to Ireland and it was a train wreck.

The scale was gone so your navigator was unable to give you helpful instructions like "the next turn is in 300 yards". Eventually they added it back, first only when zooming and later with an option to make it persist always.

The old Google Maps had inertial compensation so if you lost a GPS lock briefly it would continue to update your travel along a route using your last recorded speed. This was useful when driving in the mountains or city. Now if you momentarily lose your GPS lock it just freezes your position on the route until it reacquires a lock. It's incredibly frustrating because there's no indicator so you have no idea when glancing at the screen driving down the street. I can't tell you how many turns I've missed because of this.

The old Google Maps had some rejection logic so if you were following a route and GPS reported your position radically different from the last update it would be ignored. Now if you're driving through areas with sketchy GPS you jump around and Maps is constantly calculating a new route.

They removed elevation data which complicates trip planning. It's not so much a problem with driving, though it can be. For hiking though it's a pain because you can't see how difficult the terrain is going to be.

<comment><USER33> Has anyone else noticed that Google Maps no longer says street names? It used to say "Turn left on Drury Lane". Now it says "Turn left in 1000 feet", and I have no idea if I'm turning onto the correct road or not.

On Android, anyway.

<comment><USER34> It's frustrating when using it as a map these day, you have to zoom right in for the street names to be visible, even highways a lot of the time. By the time I zoom in to see a street and zoom back out I've lost context of where I'm looking.

Open street map is a bit better in this regard.

</comment></comment></comment></comment></comment><comment><USER35> Why? Pretty use to how Gmail is today and not really looking for a new redesign and learning the new way.

<comment><USER36> Pretty sure there will be a "switch back to the old Gmail" mode, because you're not the only one.

<comment><USER37> For a month or two. Then, one day, you'll open it up, see new design and "switch back" option is gone.</comment></comment></comment>


Startup Drinks - <AUTHOR> http://startupdrinks.com/ <comment><USER2> I went to the one in Seattle. It had a large turnout (~20 people). The event made for a good networking opportunity, but it's also fun to hang out, drink, and talk with people who share similar interests.

</comment><comment><USER3> Hear, hear! Exactly what I'm looking for. Come to Dallas, baby. Rockwall would be even better (can't come all the way out where I am cuz I live in a dry county!).

<comment><USER4> I imagine there are a bunch of startup types scattered around the Dallas area and this seems like something that might have a really positive impact. I'm near UTD in Richardson personally so anywhere around here is a good choice :)

<comment><USER5> UTD graduate at 635 & 75, here.

<comment><USER3> just in case you guys are just following your own threads (like I do), we have <http://dallas.startupdrinks.com>

</comment></comment></comment></comment><comment><USER6> It's possible I'm just blind, but is there any way to get email notifications of planned events? I'm not going to remember to check it regularly for updates :p

<comment><USER7> RSS feeds?

</comment></comment><comment><USER8> A few of my friends here in Portland, ME were planning on doing something like this, but we didn't have a name for it. Now we do!

<comment><USER9> So you didn't do it...because you...didn't have a name?

What?

<comment><USER8> We just haven't done it yet. :) We were talking about it last week, give us a break!

</comment></comment></comment><comment><USER10> Great idea, too bad I will miss the first one in SF. How about one in Boston on the first week of may?

</comment><comment><USER11> I was looking for a good way to combine my two favorite hobbies of beer and geeky conversation.

</comment><comment><USER12> Thanks to everyone that emailed me, setting up subdomains for everyone.

</comment><comment><USER13> Bleh, right before I move to the bay area, people are organizing get togethers all over the place. :(

I used to go to defcon702, but that fell apart. Its always good to go to weekly gatherings related to computers. You get kind of a network effect that you don't get off of message boards and such.

</comment><comment><USER14> Andrew set me up with the tools for Portland, OR

<http://portland.startupdrinks.com/>

Start posting! We'll drink soon.

</comment><comment><USER15> A Toronto event has been added for the Torontonians out there: <http://toronto.startupdrinks.com/>

</comment><comment><USER16> Sounds a lot like OpenCoffee (<http://www.opencoffeeclub.org/>), these things are fun though :)

</comment><comment><USER17> Sydney, Australia has had Beer 2.0 for about a year and before that Dinner 2.0

But any time to talk startup over berr is cool

</comment><comment><USER18> Can I be on the mailing list for a city not yet participating?

If so, add me to TO! edit: It is now added!

</comment><comment><USER19> Is this available to those of us outside the States?

<comment><USER12> yes, email and we will set you up.</comment></comment>


ResearchKit Framework - <AUTHOR> https://github.com/researchkit/researchkit

<comment><USER2> This is a bit of an aside, but I'm genuinely surprised that Apple has a mailing list server that is totally unthemed and just like every other!

[https://lists.apple.com/mailman/listinfo/researchkit- users](https://lists.apple.com/mailman/listinfo/researchkit-users)

Frankly, it makes me like them a bit more that somehow this was allowed -- sometimes they strike me as not only design-thinking, but design-hostage, and it's nice to know that some pragmatic developer was able to convince someone that the gold standard mailing list software was good enough for them, as-is :)

</comment><comment><AUTHOR> BSD license, more info here: [http://researchkit.github.io/blog.html](http://researchkit.github.io/blog.html)

Nice to see Apple using GitHub: to me, at least, it sends a message that they're serious about engaging with the community and ResearchKit genuinely being 'open source'.</comment>


[The Ebook] Startup Edition: Wisdom from Founders, Hackers and Designers - <AUTHOR> https://medium.com/@oscaroarevalo/startup-edition-wisdom-from-founders-hackers-designers-the-ebook-ac413f0a3f8d

<comment><AUTHOR> Ryan Hoover started startupedition.com as a side project. It was a curated gathering of bloggers in the startup community sharing their wisdom and response to a single question each week. A lot of people — myself included — could learn about startups, products, startup culture, customers and mistakes every week. For free. Directly from founders, hackers and designers.

The problem: this was a weekly newsletter with knowledge all over the internet. Every question will be answered by a member of the startup edition crew in one of their blogs and it was really hard to find a specific post about a specific topic. This is how this ebook came to life.

Startup Edition — the ebook — started as a way to organize all of the knowledge from the startupedition.com newsletter in one place. A place where every entrepreneur — or aspiring entrepreneur — could learn how founders struggled with their startups and overcame adversity.

Let me know what you think!</comment>


Gmail Disabling RC4 and SSLv3 SMTP Support - <AUTHOR> https://cryptosense.com/gmail-disabling-rc4-and-sslv3-smtp-support/ <comment><USER2> If you are on Windows Server 2003, install [https://technet.microsoft.com/en- us/library/security/ms10-02...](https://technet.microsoft.com/en- us/library/security/ms10-024.aspx) with /b:SP2QFE, otherwise your mail server may stop working. (Yes, installing [https://support.microsoft.com/en- us/kb/957047](https://support.microsoft.com/en-us/kb/957047) should do this for you, but this is safer especially considering how Server 2003 don't use CBS servicing)

<comment><USER3> Thank you for mentioning this. I was really struggling to understand reasons for not dropping SSL3 much, much earlier.

<comment><USER4> I guess google's first move was to start identifying mail sent in cleartext with the unlocked red padlock symbol. That was in February 2016. This is stage 2.</comment></comment></comment>


GitLab Handbook - <AUTHOR> https://about.gitlab.com/handbook/ <comment><USER2> I applied for an Engineering role at Gitlab. I didn't make it past the initial interview screening and politely asked for feedback in order to grow professionally.

I never heard back from the recruiter or company after that yet their handbook says:

"If the candidate asks for further feedback, only offer frank feedback. This is hard, but it is part of our company values."

I always wondered if it was because I questioned the policy of paying people differently based on their location (more specifically, some algorithm's idea of the rent in their area) rather than the work they do.

<comment><USER3> Nowadays (almost) no one will give you post-interview feedback. The risk of being sued for "discrimination" because of whatever made-up reason is just too high. In the World when more and more people belong to unknown 3 months earlier "oppressed minority" nobody wants to take chances.

The funniest story I read the other day on HN was about some company which needed to fire 10% of their employees. After consulting with the lawyers, consulting company they have hired to help in the process they decided to take a contractor, who would not have any knowledge about employees. That contractor's only job was to randomly select 10% of people to fire. Simple, cheap, safe, no risk of being sued, maybe they have fired some people who would be worth to keep (if they really wish they could hire them back anyway).

This is the sad World we live in.

<comment><USER4> > In the World when more and more people belong to unknown 3 months earlier > "oppressed minority" nobody wants to take chances.

Oh come on. What country are you living in where they only managed to catch up with civil rights in the last three months? Last added protected class in the US was 2014, if I recall correctly.

Can't we keep those "we live in a society" posts confined to reddit?

</comment></comment></comment><comment><USER5> Gitlab Unfiltered[1] is pretty cool. Say what you want about Gitlab, but they go hard on the openness aspect of things. I can't think of another company that is on the same level as them - streaming meetings and other stuff on Youtube almost seems like overkill.

1\. [https://www.youtube.com/channel/UCMtZ0sc1HHNtGGWZFDRTh5A/](https://www.youtube.com/channel/UCMtZ0sc1HHNtGGWZFDRTh5A/)

<comment><USER6> They're open when it doesn't matter. When it does, they go just as hard in the other direction: [https://gitlab.com/gitlab-com/diversity-and- inclusion/issues...](https://gitlab.com/gitlab-com/diversity-and- inclusion/issues/48)

About which more here: [https://www.theregister.co.uk/2020/02/06/gitlab_sales_women/](https://www.theregister.co.uk/2020/02/06/gitlab_sales_women/)

<comment><USER7> The first link 404s.

<comment><USER8> I believe the company determined that diversity and inclusion issues are private by default - they used to be pubic.

</comment></comment></comment></comment><comment><USER9> Valve is famous for their handbook, too: [https://www.theverge.com/2012/4/21/2964991/valves- handbook-f...](https://www.theverge.com/2012/4/21/2964991/valves-handbook-for- new-employees-leak)

</comment><comment><USER10> I like the section on the CEO: [https://about.gitlab.com/handbook/ceo/#flaws](https://about.gitlab.com/handbook/ceo/#flaws)

<comment><USER11> For some reason, that rubs me the wrong way. I had a manager who acted the same way, told us all his flaws and then expected us to cater towards him, without him making much effort. If anything went wrong, and we somehow didn't cater to his flaws, he would blame us for it.

He also came into one of our retrospectives, and said "I'm feeling really emotional today, so I might act a bit strange". Everyone asked him to leave so the rest of the team could have our retrospective, but he insisted on stay and just asked everyone to be aware of it. Of course nothing productive came out of that meeting, in fact, I'm pretty sure that's why a few engineers resigned.

<comment><USER12> I was pretty impressed with the tone of that section. It was very clearly giving people permission to pick him up on it when one of those traits came up, which is the opposite of your example.

The interesting question to me is whether the CEO needs to be a special case. We all have flaws, how should this be handled? Surely the important thing is that the company culture is such that people feel ok with (politely) pointing out these behaviours? Or is the CEO always going to be a special case where they're constantly in contact withe people many layers below them and that isn't a realistic expectation?

</comment></comment></comment><comment><USER13> Their handbook is better documentation than what they offer for the product.

<comment><USER14> We've recently migrated to them from github + jira + self-hosted jenkins + self-hosted private npm. Do you have a specific gripe? We definitely have fewer issues with them than those other services combined.

</comment></comment><comment><USER15> GitLab's SQL style guide is one of the best I've seen.

<comment><USER16> We link to three others at the bottom of our guide that have heavily inspired us [https://about.gitlab.com/handbook/business-ops/data- team/sql...](https://about.gitlab.com/handbook/business-ops/data-team/sql- style-guide/#other-sql-style-guides) Thanks for the kind words!

* [https://github.com/fishtown-analytics/corp/blob/master/dbt_c...](https://github.com/fishtown-analytics/corp/blob/master/dbt_coding_conventions.md#sql-style-guide) * [https://github.com/mattm/sql-style-guide](https://github.com/mattm/sql-style-guide) * [https://gist.github.com/fredbenenson/7bb92718e19138c20591](https://gist.github.com/fredbenenson/7bb92718e19138c20591)

</comment></comment><comment><USER17> For an alternative fully remote company that pays people based on their skills, not where they happen to live, check out InVision!

</comment><comment><USER18> Related from 2016: [https://news.ycombinator.com/item?id=12091638](https://news.ycombinator.com/item?id=12091638)

</comment><comment><USER19> I will buy this handbook as a real book. It's great content. I know it changes all the time, but buy it as an Nth edition will be great.

</comment><comment><USER20> [https://about.gitlab.com/handbook/people-group/global- compen...](https://about.gitlab.com/handbook/people-group/global- compensation/calculator/)</comment>


Upsert anti-pattern in SQL Server - <AUTHOR> https://sqlperformance.com/2020/09/locking/upsert-anti-pattern <comment><USER2> This is specific to Microsoft SQL Server, which has a rather fraught history in this department.

I believe the best option in PostgreSQL is still INSERT ... ON CONFLICT ...

In general, this is one of those spots where every single RDBMS behaves differently, so knowledge from one platform doesn't necessarily transfer well.

(Which, in turn, is one of the reasons why it's not necessarily a good idea to try to be database-agnostic.)

<comment><USER3> Sqlite has the same as Postgres; INSERT ... ON CONFLICT ... DO ...

It's very ergonomic and intuitive. I understand why SQL Server needs to retain older forms, but why can't they also adopt these new forms that are more pleasant for the end user? I suppose the people buying licenses to SQL Server usually aren't the ones actually using it.

<comment><USER2> Officially, MERGE is the method defined in the SQL standard, and is by far the most widely supported syntax.

Everyone else uses different, DBMS-specific, non-portable syntaxes. A lot of them (e.g., PostgreSQL and Sqlite) have some similarities, but are still mutually incompatible.

I think that Microsoft arguably made the right decision by choosing to conform to the standard. It's just kind of unfortunate that the ISO standard syntax is (in my personal opinion) not very good.

<comment><USER4> I am the primary author of INSERT ... ON CONFLICT in Postgres. I extensively studied similar features from other database systems as part of that project.

MERGE simply doesn't provide the guarantees that most users want -- not in theory and not in practice. For example, the Oracle docs introduce MERGE by saying: "This statement is a convenient way to combine multiple operations. It lets you avoid multiple INSERT, UPDATE, and DELETE DML statements."

It's likely impossible to make the concurrency guarantees work sensibly in READ COMMITTED mode while supporting MERGE's very general semantics. There are subtle but very real problems with making it behave like ON CONFLICT in one context but not in others. In my view MERGE is a perfectly reasonable feature, but it just isn't what people want when they say they want to upsert.

The SQL standard deliberately underspecifies anything related to transaction isolation or concurrency. I cannot see the standard providing any guidance on upsert for this reason.

<comment><USER5> Thank you for your work! Postgres is great to use and the regular release of useful features has been a very nice benefit.

One unobvious (to me) but possibly necessary side effect of the INSERT...ON CONFLICT pattern is that it reserves a primary id for every row ahead of time, presumably because it does not know what will be updated and what will be inserted. We have a heavily updated table that started failing inserts one day because the primary id sequence hit the max int (2.1b), despite the table only reaching 100mm rows. The immediate fix was to reset the sequence to -1 and have it start going down...

<comment><USER4> I hear that one from time to time. It's a consequence of the fact that sequences are generally not transactional, and the fact that the underlying "speculative insertion" infrastructure really does have to do most of the work of the insertion before it can decide whether or not the insertion really should go ahead.

I'm sympathetic, but unfortunately I cannot think of any tractable way of avoiding the problem at the implementation level. Maybe it would be possible to do something with an identity column (as opposed to a SERIAL column or a raw sequence) -- we have access to sufficient context there. Maybe we could skip consuming a sequence in the common case where there is a clear conflict at the start, and the sequence isn't accessed through the EXCLUDED pseudo table. We wouldn't actually promise anything more, but in practice we wouldn't burn through sequences at the same rate in cases where updates are common.

This is quite a significant project, but maybe it'll happen some day.

</comment></comment></comment></comment></comment></comment><comment><USER6> It's annoying that databases don't implement UPSERT natively. As far as I can tell the solution provided by every db requires the repetition of all the damn fields. To pick on the supposedly more ergonomic postgres method, here's a typical example,

      INSERT INTO students(id, firstname, lastname, gender, d_o_b, email)
      VALUES (1516, 'Gerard', 'Woodka', 'M', 'January 27 1995', 'firstname.lastname@example.com')
      ON CONFLICT (id) DO UPDATE SET
        firstname = EXCLUDED.firstname,
        lastname = EXCLUDED.lastname,
        gender = EXCLUDED.gender,
        d_o_b = EXCLUDED.d_o_b,
        email = EXCLUDED.email;

At least it doesn't force you to repeat the values like many other servers. But still the repetition is bug prone and hard to maintain as the table changes. And it's just annoying to type.

<comment><USER7> I think you really want to repeat the fields because inserting versus updating could require dramatically different behavior.

<comment><USER8> There are many cases where you only want to update a subset of the fields, or even not update anything, but it's also true that a shortcut to update everything but the conflicting fields would be nice.

<comment><USER7> Oh I get the convenience, it just seems like an easy way to shoot yourself in the foot, like an update without a limit clause.

</comment></comment></comment></comment><comment><USER9> > I think everyone already knows my opinions about MERGE

not everyone is stuck on a 15-year-old version of SQL Server. odds are you can go ahead and use modern language features. I can understand why a DBA consultant that frequently encounters production issues with old bugs would feel this way though.

<comment><USER8> It's certainly not jus sql server. The implementor of INSERT…ON CONFLICT UPDATE in Postgres considered and rejected MERGE[0] on grounds that it's simply not specified to do what people generally _want_

> MERGE, as implemented within other major systems and as described by the SQL > standard does not require an atomic insert-or-update for even the simplest > possible case of OLTP style insert-or-update.

> SQL MERGE as implemented within other systems doesn't require that a unique > index be defined on the column or columns of the MERGE statement's outer > join. I am not enthusiastic about the idea of falling back to table-level > locking when an appropriate index isn't available. That could be a foot-gun > for the large majority of users that just want to solve their basic insert- > or-update problem.

A MERGE patch was submitted for pg11, it got bumped multiple time and returned with comments early 2019 with no visible activity since.

[0] [https://www.postgresql.org/message- id/CAM3SWZRP0c3g6+aJ=YYDG...](https://www.postgresql.org/message- firstname.lastname@example.com)

<comment><USER9> this has nothing to do with SQL Server. on SQL Server MERGE is atomic, if the source has no indexes it's probably a temp table, of course evaluating "not matched" requires joining the source to the target, on SQL Server you should be thinking and working in sets and avoiding single row (RBAR) whenever possible. if you're doing highly concurrent single-row upserts you're already SQL Servering wrong and I'll concede that's a case where you probably need a bunch of lock hints (regardless if it's a merge statement or an update followed by an insert)

</comment></comment></comment><comment><USER10> It is such a common operation that I think MariaDB is doing the right thing by having a dedicated command for it, "INSERT ... ON DUPLICATE KEY UPDATE":

[https://mariadb.com/kb/en/insert-on-duplicate-key- update/](https://mariadb.com/kb/en/insert-on-duplicate-key-update/)

<comment><USER11> Also, REPLACE INTO...

<comment><USER12> I've been burned with replace. The problem is that if you have fields with default values they will be set/reset to the default even if nothing changed. What I'd like to happen is that for any values that I don't supply, the table values remain unchanged.

</comment></comment></comment><comment><USER13> Actually for many rows I delete and insert.

Much easier to write.

DELETE FROM t WHERE id IN (SELECT id FROM new_data); INSERT INTO t SELECT id, other_field FROM new_data;

It seems so natural to me that I do not have to repeat field list.

Queries were mostly in context of ETL, so never considered performance issues. Never wrote such code for OLTP.

<comment><USER14> That'll update all ties though, including fields like created_at that you may not want updated.

</comment></comment><comment><USER15> I agree with this but this is a small nitpick compared to what kind of SQL queries Ive seen in production in different places I worked at. Not to mention the amount of redundant queries from ORMS performance hit which a lot of developers aren't even aware of.

</comment><comment><USER16> Shouldn't the IF EXISTS be done after starting the transaction? What happens if the key is deleted before the transaction can start?

</comment><comment><USER17> Title possibly: "Stop writing upserts the wrong way (MS-SQL Server)" since it's less clear which flavor of SQL this is relevant?

<comment><AUTHOR> SQL Server is the name of the product, hence the inclusion in the title.

<comment><USER18> In a common forum that is not purely dedicated to Microsoft technology, MS product names really ought to be prefixed — context is important. For example, it applies to Entity Framework also: it has happened a few times to me that a non-MS developer assumed that ORMs in general were discussed, while it was related only to the MS implementation.

</comment></comment></comment><comment><USER19> when I need to do some kind of upsert on SQL server, I tend to refer to this post: [https://michaeljswart.com/2017/07/sql-server-upsert- patterns...](https://michaeljswart.com/2017/07/sql-server-upsert-patterns-and- antipatterns/)

</comment><comment><USER20> You also gain by executing one less transaction at the times of successful update.

Quite a good pattern actually.

</comment><comment><USER21> True. Don't use MERGE in MS SQL Server. Use two separate statements.

<comment><USER22> It's better to back up assertions, even if you're correct:

By the same author (who I highly respect):

[https://www.mssqltips.com/sqlservertip/3074/use-caution- with...](https://www.mssqltips.com/sqlservertip/3074/use-caution-with-sql- servers-merge-statement/)

</comment></comment><comment><USER23> And that is (part of) why RDB "failed" to keep people even for use-cases where they should be better then NoSQL.

\- To much hidden complexity which can leaf to bugs if you don't know about the _hidden_ complexity.

\- To messy and/or misunderstood concurrency.

\- Many People having fundamental misunderstandings about how to do things and how far transactions are useful for given (often implicit default) options.

One thing I had to learn the hard way is that many programmers which supposedly "know" about RDMS/SQL don't even understand isolation levels properly.

Also is it just me or is this way easier in postgres (with on conflict ...).

<comment><USER22> It makes me weep when interviewing and I ask developers about fundamental stuff such as "what is ACID?"[0]

None of this stuff is hard to learn, and _I 'm_ not exactly Mr Ace Developer. But time and again I've been asked to debug/fix data inconsistencies that were caused simply because the developer didn't know what a transaction was, whilst running multiple inserts and updates, and one of them failed along the way.

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

<comment><USER24> I don't know if it's worth a damn, but I have no idea what the acronym stands for. I'm sure I knew it at some point and I know it's a database compliance standard kinda thing.

But I use the shit out of transactions. I rather have contention issues than non-atomic operations done to corrupt our data. When I get to Facebook scale I'll let you know what I think about eventually-consistent and NoSQL, etc. ;)

<comment><USER23> The problem is people not even knowing that if you use the default isolation level (on pg, read-commited) that you can't do something like "read cell X, modify X in code (e.g. X+=1), write X back" without running into race conditions which you can either avoid by using a lock (e.g. a row lock) or a different isolation level.

No need to know what ACID is an acronym for (I forget it all the time) or how the isolation levels are called, but you need to know what to look out for (mainly data dependencies between read an writes in the same transaction having race conditions you need to "team" and multiple read inconsistencies)

<comment><USER22> > No need to know what ACID is an acronym for

Sure, but if you're mentoring a junior developer then I'd like to think you'd pass this knowledge on and make them understand its importance in a formal way, rather than some partial hand-wavey "this kinda means this". Get them to go and learn these fundamentals and test them on it, which is good for you because it keeps it fresh in your mind to just roll off the tongue at parties :)

</comment></comment></comment></comment></comment><comment><USER25> I don't understand why INSERT ... ON CONFLICT ... DO is even a thing.

Yesterday there was a item on a piece by rachelbythebay about checking for and dealing with unexpected conditions in your code as a practice that separated professionals from ... er, idiots.

This would appear to be a prime example of that antipattern -- in general, not just in SQL Server. If a tuple snuck into your relation while you weren't looking, don't you need to rollback and find out the current state of things?

edit: Rachel's piece: [https://rachelbythebay.com/w/2020/09/02/check/](https://rachelbythebay.com/w/2020/09/02/check/)

<comment><USER26> What do you mean by "you weren't looking"? The SQL statement which is doing what you tell it to do, _when there 's a conflict_.

<comment><USER25> I'm asking, why is there a conflict? Why don't you know whether or not that tuple is in the relation before you start?

In OLTP, this practice (UPSERT) would cause all sorts of mayhem.

<comment><USER27> In practice, these conflicts can happen quite often during data synchronization. Say someone uploads a list of inventory, keyed by ITEM_ID. You want all your items to be either added (new) or modified (previously existing.) You _could_ loop through them one-by-one, or you can just let the database handle it with a bulk upsert.</comment></comment></comment></comment>


Mapping land boundaries using drones - <AUTHOR> https://www.iafrikan.com/2017/12/07/drones-are-taking-to-the-skies-above-africa-to-map-land-ownership/ <comment><USER2> While I generally applaud their plan to try something new, I wonder why this is more feasible than say, using high-resolution satellite imagery? At 30 cm pixel resolution, it's certainly possible to see the hedges that demarcate the property lines. A possible advantage I could see is if the area is notoriously cloudy, a UAV will be able to fly below most of that cloud cover. As a commercial UAV operator myself, I also suspect they will receive resistance from certain landowners whose land they are flying over, where the satellite route removes a lot of this friction.

</comment><comment><USER3> Awesome, would be fun to do that in the U.S. as well.</comment>


Workout forms and some more advice - <AUTHOR> https://medium.com/biaionescu-lifestyle/workouts-and-advice-what-works-for-me-a11e87a6250#.olsh3zxq7 <comment><USER2> Weights. Start with BodyPump classes. You won't learn much but you'll get reps and some tone. Then get into a 5x5 routine (StrongLifts) and study form, a lot. I use an app for that since I don't want to think about rest pauses, reps, levels, ... I can mentally forget all that mechanical stuff and just think about form.

I'm not a personal trainer fan.

Squats. Ass to grass paused squats. Everything got better when I started getting serious about squats.</comment>


Escaped inmate may have used wire cutters delivered by drone - <AUTHOR> https://www.washingtonpost.com/national/south-carolina-inmate-captured-in-texas-after-second-escape/2017/07/07/238ec556-6304-11e7-80a2-8c226031ac3f_story.html <comment><USER2> """They have to land for you to get the contraband off of them," he said. "They can't drop it like a bomb."

This doesn't seem logical. I mean, (if) I were to attempt this, I'd fly a drone very high out of site of the guards, with a downward facing camera. Wait until I was over the correct area, and release the (heavy) tool that would fall mostly straight down. Seems pretty hard to spot / track / fail at. As far as dropping it, thats just a servo, hardly difficult.

<comment><USER3> Depending on the size of the wire cutters (which are definitely tiny vs bolt cutters) the servo drop method is extremely plausible, it's the same delivery system ISIS has been using for consumer drones in Syria and Iraq.

<comment><USER4> There seems to be some inconsistencies in this article- wire cutters, or bolt cutters? Big difference.

</comment></comment></comment><comment><USER5> > But an official aerial photo of the prison shows rings of tall fences and an > expanse of more than 50 yards between the prison perimeter and the > cellblocks, making it unlikely someone could have thrown or catapulted tools > to him.

Have they never heard of a potato cannon?

>"They have to land for you to get the contraband off of them," he said. "They can't drop it like a bomb."

I see no reason why this is entirely impossible in all circumstances.

</comment><comment><USER6> The headline is unsubstantiated speculation by the prison. There's no evidence cited that the wire cutters were delivered by drone.

</comment><comment><USER7> And so begins the push to require that all drones be registered with the police and equipped with an ID transponder and a remote kill switch...

<comment><USER3> They're already pushing that to a degree, DJI is actually a proponent of a digital tracking ID and registration.

<comment><USER8> On DJI drones, you already need to be "signed in" to the app in order to fly in regulated airspace (or what DJI thinks is regulated airspace). It is also necessary to exceed the legal height limit of 400ft. I wonder if anyone is stupid enough to do that?

<comment><USER9> That only affects the newer ones the ones even the phantom 3 basic can be flown without the app.

Also it's not that the registration is tied to a government issues ID at this point.

Throwaway email and a basic android bruner phone can't really be tracked.

</comment></comment></comment></comment><comment><USER10> >"Tamez said there is no easy way for prisons to protect against the use of small, unmanned aircraft, other than hiring more guards to watch the fences."

Can the drone and controller radio signals be detected, recognized and triangulated? seems cheaper than staffing up..

<comment><USER11> well prisons aren't even allowed to block cell phones within prison walls, the state of Georgia confiscated over twenty two thousand cell phones in 2016. Yes, twenty two thousand. [1]. This lets them continue to commit crimes while behind bars.

The rules that prevent anyone else from blocking radio and cellular signals apply to prisons as well. so in a battle against drones one of the only steps would be to keep all inmates inside 24x7 but that still leaves you with exposure on details and worst yet, the staff.

[http://www.myajc.com/news/local/georgia-prisons-inmates- use-...](http://www.myajc.com/news/local/georgia-prisons-inmates-use-drones- apps-skirt-security/u4pWc3LklJWGfvRDzy04XK/)

<comment><USER12> > well prisons aren't even allowed to block cell phones within prison walls, > the state of Georgia confiscated over twenty two thousand cell phones in > 2016.

Seems to me that blocking cell phones is the wrong solution; preventing smuggling of contraband is the solution.

If you can smuggle cellphones in, cellphones are far from your _only_ problem, and probably far from your biggest.

<comment><USER13> Seems like it'd be a lot easier to jam cellphones with a few hundred bucks worth of parts than apply Supermax security standards to every low-security inmate.

<comment><USER14> The technology isn't the issue. FCC and similar regulations are.

<comment><USER13> I'm aware of that. This seems like the sort of thing where an exemption should be a no-brainer, and I'm fairly shocked there hasn't been a law allowing jammers in prisons yet.

</comment></comment></comment></comment></comment></comment><comment><USER15> Why are they so sure he didn't obtain the wire cutters the classic way: via dirty guard?

</comment><comment><USER16> I've never understood how escapees are smart enough to put together an elaborate escape plan, but then don't have the sense to lay low.

Sometimes I think there are plenty of people who escape but it's not publicized so as to not encourage it and that the ones who do escape and are caught are made examples of.

<comment><USER17> It's not just about intelligence, but also about impulse control, mental illness, desperation, etc. Someone could be reasonably or even very intelligent and still have issues in these other areas.

<comment><USER16> That's kind of the point I was trying to make though.

Isn't planning an escape a display of those traits?

Planning an elaborate escape, securing cash, biding your time, roping others in - isn't that a display of controlling your impulses, clear enough thinking to plan something out long term?

Seems like it's a display of more than just intelligence.

It's almost like these people just lack focus and if they had something productive to devote their time to they may have avoided this life.

</comment></comment></comment><comment><USER18> Anyone think life behind bars is harsh for just holding someone up at gunpoint? Though a lawyer - probably has connections w/ judges and other lawyers so--he got the book thrown at him... Kind of sad that we waste tax payer dollars keeping people in jail this long who don't need to be.

<comment><USER15> I don't know. The way I see it, pointing a gun at someone is a threat to kill them; why else do you point a gun at them? Anyone who is willing to kill (as the victim must surely assume) doesn't belong out on the street. Can they be rehabilitated? Maybe, and then maybe life in prison is harsh. But if someone points a gun at me I'm going to assume they're going to kill me and as far as I'm concerned they should be treated as if they were going to. There's a difference between saying you're going to kill someone and actually being only the slightest twitch away from doing so, intentionally. I have little sympathy for those who would care so little for the lives of others. Life is too precious to be soft on those who disregard it.

<comment><USER18> Just watched... going in style--where old geezers robbed a bank.. the guns were loaded w/ blanks--so just pointing a gun doesn't always mean intent to kill -- plus some people at age 19 might intend to kill, but by age 30 they see htey were an idiot and come around and are nothing like that, shouldn't they be able to re-enter society if not a threat any longer?

Now if they did kill someone that's a whole separate thing, and also aren't you innocent till proven guilty? Intent should not matter you can't be convicted of your intent, but of your actual actions which is you pointed a gun at a person, you did not fire said gun so shouldn't be accountable for the higher crime.. Not saying don't punish, but temper based on final outcomes...

had an uncle who's son robbed a hotel w/ his gun he was 18, his dad like 40's... he got something like 5-10 years. His dad who was asleep in the hotel room got 75 years because he owned the gun... He's been in jail since 1993, my grandpa died never having been able to visit/see him because he was all the way in Texas.

</comment></comment></comment><comment><USER19> Ah, the low-budget variation on the old classic -- the helicopter prison escape!

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

</comment><comment><USER20> Even as a preteen in the mid 90s, I was intrigued by the obvious criminal possibilities presented by remote-controlled helicopters. Only a matter of time until someone is murdered with a consumer drone.

<comment><USER21> Considering how small, fast, and cheap drones are these days, I'm honestly surprised it hasn't happened yet.

<comment><USER22> I've thought about this too... I can imagine a kamikaze drone armed with an explosive (or swarm of them) would be a pretty effective weapon.

<comment><USER21> I've had the exact same thought. Drones are the perfect assassination tool. I mean, they are already being used as such by ISIS and the US (e.g. Yemen). But you would think that the common criminal would have begun using them by now too. So far all I've heard of in that regard is them being used for drug trafficking.

<comment><USER8> A teen in CT attached a pistol to a Drone a few years ago. He only did it for "test" purposes. I was very impressed how the drone handled the recoil.

</comment></comment></comment></comment></comment><comment><USER23> Trebuchet seems like it'd be a lot cheaper with larger payload...

<comment><USER24> But way harder to correctly aim in first try.</comment></comment>


Ask HN: Join a Co-Op? - <AUTHOR> Imagine a collective of people just like the ones in this community, focused on solving the same problem?
We could build it 10x faster
We could sell it 10x faster
Interested in exploring this concept with me?
I'm putting together a slack channel to discuss if you're interested.
https://join.slack.com/t/noco-co-op/shared_invite/enQtNjI5MjEwOTE5ODE1LTdjMDE1ZmY3MzU2ZmQ2Zjg0MGMyM2E1ZjdkNjhmNjg4YjNhYzgyNzI5YzlmZDcyNDQ5MjkxOTQ2ODBkYTUzMGY
also slightly more info in a nice wrapper at https://noco.io
Hugs,
AP <comment><USER2> Hey Andrew. Are you based in Europe? Can you explain your idea of a co-op? Do you mean multiple people working on one idea together, more like company or everyone working on their idea but helping each other?</comment>


Is blockchain really cheaper than centralised payment systems? - <AUTHOR> I've recently did a bit of calculations comparing Bitcoin and Paypal.
One of the most interesting thing that I found that Bitcoin transaction in average is much more expensive than Paypal transaction, 7 to 20 times now.
I think that it is very interesting, taking into account that cheap transaction is very often cited as a big benefit of blockchain technology.
To make it clear, the cost per transaction was calculated as revenue of system providers divided to number of transaction for the period of time. For Bitcoin providers were minders, for Paypal  - Paypal itself. For the end of Q2 2017 I came to $2 for Paypal and $14 for Bitcoin. Now Bitcoin transaction is even more expensive, around $40. Important to note that for miners I've calculated both direct transaction fee and mined new coin reward, I think that is the correct way. Even if we forget about new coins created, just transaction fee now is around $8.
More details with data sources and an infographic summary are available in my blog -
https://levashov.biz/paypal-vs-bitcoin-2017/
The question to community - do I miss something important? What other people think of it? <comment><USER2> Did anyone _ever_ say that Bitcoin would be cheaper?

It's pretty well-known that things are more efficient if you can trust a centralized authority to maintain them. The point of Bitcoin is the decentralization, not efficiency in any way.

<comment><AUTHOR> A lot of people claim that blockchain will be cheaper.

For example this is from Deloitte: By eliminating third party intermediaries and overhead costs for exchanging assets, blockchains have the potential to greatly reduce transaction fees.

</comment></comment><comment><USER3> New blockchains have lower barriers to entry I suppose?

</comment><comment><USER4> Ethereum, on the other hand is alot cheaper.</comment>


First Digital Pill Approved to Worries About Biomedical 'Big Brother' - <AUTHOR> https://www.nytimes.com/2017/11/13/health/digital-pill-fda.html?mabReward=ACTM7&recid=0wMQV8pUSQREt22sVvB4uLq5DWz&recp=7&action=click&pgtype=Homepage&region=CColumn&module=Recommendation&src=rechp&WT.nav=RecEngine <comment><USER2> Heh... I worked on this project back in 2014 or so. At the time, none of us gave much thought to the "big brother"'ish aspects, but in hindsight, that's a reasonable concern. I mean, the technology has potential benefit to be sure (don't most new technologies) in terms of helping ensure compliance with pill ingestion protocol, and getting into "personalized medical analytics" etc. But if the State, or the BigCorporations get their hands on this data with the intent of using it for nefarious purposes, yeah, that could be a problem. :-(</comment>


One page per day - <AUTHOR>

please review a quick project:<p>http://www.onepageperday.com <comment><USER2> This looks to be a great tool, a creative writer's dream.

I'd like to see a terms of use statement, a privacy statement, and some controls as to what's private (ought to be the default) and what's open (everything private is fine). Using google and/or twitter creds is nice for the weak of memory, but it means revealing username and passwords for those sites, which in many users eyes is a security breech. It would be nice if you had a username/password for the site itself so that the paranoid can indulge in application isolation.

I suspect you'll get lots of people suggesting enhancements but, if I were you, I'd reject them. What's nice is the total simplicity and the daily reminder.

<comment><AUTHOR> thanks for the great comments.

I will add the privacy policy info, etc. The google auth is completely secure (a feature via app engine) but I think the twitter auth could be secured a bit more. Interesting idea about adding a username/password option for the site itself.

</comment></comment><comment><USER3> Nice. Some things to consider...

-I'd be concerned with the privacy of my text

-In what form is the reminder?

-What am i supposed to write? Some examples (diary, fictional stories, grocery lists) would inspire my use of it.

Those 3 points should be addressed on the homepage.

A more pronounced signup/login link would also be good.

<comment><AUTHOR> thanks for the ideas. Out of curiosity, what could be done to make you feel more comfortable about the privacy of your text? Would a bit of verbiage help? Or would you distrust any cloud service?

</comment></comment><comment><AUTHOR> <http://www.onepageperday.com> clickable link.

<comment><USER4> I like it. Some thoughts on the design:

-Stack the controls vertically on the right. Center the "blank sheet" (to make it feel more like a sheet on a desk or typewriter).

-Cut the half-sheet from the top (it felt a little crowded to me... not sure where to place your "just start typing note, but it might be nice to fade in briefly and then out).

-Adjust the alignment on the header.

-Lighten the page outline to #AAAAAA and shrink the drop shadow to 3px.

Maybe it's too minimalist, but here's how I would imagine it:

<http://michael-kelly.com/minor-onepageperdaycom-edits>

Good luck!

<comment><AUTHOR> thanks much for the great suggestions. I was thinking that the "half sheet" would be more like a 1.5" bit of the previous page, to minimally trigger the writer's memory of where he/she left off before... for subsequent pages it's what you ended on, not the starting note...

I am in full agreement with the rest of your suggestions... btw I think the shading is a bit different on different computers, which led me to the larger drop shadow, etc. But I'll reduce it a bit and change the border color.

</comment></comment></comment><comment><USER5> Allow people to try it out without signing in, then give them the option afterwards to register or give them an easy way to create a login like <http://writeboard.com/>

<comment><AUTHOR> interesting idea... i will have to think about how to make that easy ... i suppose it could pop up a facebox that offered to save if they signed in...

</comment></comment><comment><USER6> nice. although seems like pretty much the same idea as <http://750words.com>

<comment><USER7> With some distinction, 750words is more as a de-stressor.

<comment><AUTHOR> yeah onepageperday is supposed to be more of a "1% per day" sort of thing...

</comment></comment></comment><comment><USER8> would be helpful if you include a link to your site in your gentle reminder email

<comment><AUTHOR> done!

</comment></comment><comment><USER9> Why use periods between each word? I makes it look like a domain name.

<comment><AUTHOR> fixed.

</comment></comment><comment><USER10> this would work well with <http://www.dontbreakthechain.com>

<comment><AUTHOR> yes! I was thinking of putting in a calendar like that!</comment></comment>


Transform any Google form into a chatbot - <AUTHOR> https://fobi.io <comment><USER2> Interesting, but it refused every link I paste into it. "Check your link and try again" for every form that works in my unlogged in browser. Example: this form generated with a default template [http://docs.google.com/forms/d/1a4Pbyz9TmTidR- rD6U9q3sgC2jEI...](http://docs.google.com/forms/d/1a4Pbyz9TmTidR- rD6U9q3sgC2jEI0KvSLHS-09HiNho/)

It would be nice to have a link to a contact form and report issues. Twitter, Facebook and LinkedIn are not for that.</comment>


Firefox on Android Gets a Major Update ... and Users Hate It - <AUTHOR> https://www.forbes.com/sites/barrycollins/2020/08/26/firefox-on-android-gets-a-major-update-and-users-hate-it/#2e3c59e13e27 <comment><USER2> I don't think the UI changes or bookmarks would be that bad, a bottom address bar might be a good idea.

But to remove add-ons, the one criteria that made the browser exceptional... about:config is removed in the default build...

The response is correct and would have been predictable. Still using Firefox, but this isn't an improvement. I don't want signed off addons...</comment>


ZFS: Apple's New Filesystem That Wasn't - <AUTHOR> http://dtrace.org/blogs/ahl/2016/06/15/apple_and_zfs/ <comment><USER2> It's kind of a shame that ZFS hasn't seen better adoption, and that btrfs has been pretty stagnant, and that in general next generation file systems are mostly still-born. It would be nice to see some improvements in this area as 10tb hdd's are eminent, and data management is important.

However, it's worth noting that RAID, especially in software on systems without ECC ram is less than ideal. Beyond this is the overhead of managing larger filesystems with ZFS. The DIY raid servers that support it have had some troublesome issues that I've experienced first hand.

It's likely a lot of these advantages have been displaced by the discontinuation of Apple's server projects as well as other fears. By similar note, I've always been somewhat surprised that NTFS hasn't been more popular for external media, as it's a pretty good fit there.

In the end, software at this level has been held back significantly by the patent hornets nest that exists in the world today. I truly hope that we can see some reform in this space, but with the likes of TPP and similar treaty negotiations around the world today, that is pretty unlikely. Eventually some countries will have to strike out, break these bad treaties and reign in IP law. The vast majority of software is undeserving of patent protection. Just as software really shouldn't have copyright law that lasts for decades. It's a shame all around.

<comment><USER3>
       NTFS

I ran into a bug just today that I'm still struggling to believe. A large Oracle server fell over, just reporting "IO errors". The issue was ultimately traced to NTFS's handling of fragmentation[0].

I've gone about ten years thinking running a defrag - particular on a virtual disk sitting on a SAN in a RAID array - made no sense. Today's downtime says otherwise.

It's one thing to perform poorly. But seeing services just die with disk write errors on a disk that's 30% full has left me with a very low opinion of NTFS. Our Oracle person sounds like a desktop maintenance person from the 90's making an issue out of "the importance of weekly defrags".

[0] [https://support.microsoft.com/en- au/kb/967351](https://support.microsoft.com/en-au/kb/967351)

<comment><USER4> In my DBA days in the 90s/2000s, this sort of issue was usually a lousy DBA that had extent sizes set too small.

Windows can clearly handle big databases. The people getting paid to run the platform need to have a clue about the platforms they are running.

</comment></comment></comment><comment><USER5> In general is it just me or has ZFS become more popular lately. Saw Ubuntu get behind it, even in light of Btrfs being available for many years now. [https://github.com/zfsonlinux/zfs/commits/master](https://github.com/zfsonlinux/zfs/commits/master) is pretty active...

It seems everyone at some point expected Btrfs to shoot ahead and leave other file systems in the dust, so there was no point in bothering with ZFS, "just wait a bit and Btrfs will be the default everywhere". And besides ZFS has all the legal issues with it.

But it seems Btrfs progress was rather slow, so even in spite of legal issue interest in ZFS is still growing.

<comment><USER6> the thing about ZFS is that it was an actual selling/functioning product before btrfs was in development (links at end). There always were people using it - whether through the main Sun/Oracle Solaris product or via one of the OpenSolaris / illumos / Freebsd / Bsd continuations.

Btrfs was not an fs in wide production use the way xfs or ext3 / ext4 were, so it's understandable that btrfs progress is slow. The two pieces of software are just really far apart in timelines and maturity. People are paying attention to ZFS mainly because it's had a history of working and functioning in production environments and in heavy load, for a decade now.

In my opinion, in order to have parity with ZFS, some big distribution (bigger than Suse, maybe Debian or Ubuntu) needs to set btrfs as its default fs, and have banks, stock exchanges, dns providers, virtual hosting companies, etc hammer the hell out of it for another 6 or 7 years and get all the bugs that come out of those experiences fixed. Then people will start paying attention to it.

afaik btrfs development started 2007 ([https://en.wikipedia.org/wiki/Btrfs](https://en.wikipedia.org/wiki/Btrfs))

ZFS was introduced as a part of Solaris in 2005, released as openZFS in 2006 ([https://en.wikipedia.org/wiki/ZFS](https://en.wikipedia.org/wiki/ZFS))

<comment><USER7> Honestly... I don't trust btrfs at the moment. It has had some nasty data losing bugs in it in the past, and admittedly its been a while since I heard of one, but it's also not often that you'll hear of someone actually using it in production. Even their wiki page is woefully lacking in examples with which to sell it: [https://btrfs.wiki.kernel.org/index.php/Production_Users](https://btrfs.wiki.kernel.org/index.php/Production_Users).

I want to like it, we really need a nice, stable next-generation file system in Linux land (that doesn't have the licensing issues associated with ZFS)

<comment><USER8> I do like it. However I am very wary of using the advanced features (beyond the de-fragmentation/scrubbing/balance kind) without a /good/ backup of the data on the system and a good retention policy.

It has been my experience with using BTRFS for my own personal data that it's the less tested code paths which had / might have the issues you're describing. Things like sparse files (I got bit by this bug), snapshots (regular scrubbing and backups are things you're doing already right), and other features that are less frequently used.

A small production cluster where I work uses XFS over BTRFS though, because of the very FUD that's mentioned and the type of storage happening on it matching the sparse pattern (even though that bug should be fixed).

</comment></comment></comment></comment><comment><USER9> Seems like running on SSD/NVRAM may call for some new thinking. Running on watches may be even secondary to that.

Not that ZFS won't run well on SSD, but it feels like there's a gulf between filesystems designed with SSDs in mind and those designed with spindles in mind.

<comment><USER2> It seems that COW filesystems in general are better for use with SSDs... iirc, SSDs themselves do similar things as part of their wear leveling algorithms anyway. It seems to me that it's time to break some of this down. With solid state storage reaching levels close to RAM in terms of latency, I think eventually they'll come together, and that's where it will get really interesting.

On the flip side, with spinning storage approaching 10tb drives, the need for enhanced filesystems for RAID arrays with those beasts are needed as well.

In general, we really need some patent releases from those companies strangling filesystem advancements (namely Oracle and MS).

<comment><USER10> Out of curioisity, how do you feel that Oracle is strangling filesystem advancement?

<comment><USER11> Encryption is a big one that's been annoying everyone. Oracle baked encryption into their own ZFS implementation ages ago, but not in a way that works with the open source variety. Years later, we're only just now starting to see some solutions for this.

</comment></comment></comment></comment><comment><USER12> Meanwhile, this works, is under active development, and is essentially at HEAD of both openzfs and zfsonlinux:

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

<comment><USER13> Not sure what your point is. Are you saying Apple should use this? AFAICT it's still under the CDDL, which is the main reason Apple abandoned the ZFS plans in the first place.

<comment><USER14> Except for the fact DTrace is under the exact same license and ships with OS X.

<comment><USER15> DTrace is not a core technology on which the rest of the platform is built. If you read the actual article, this is discussed.

<comment><USER16> Agreed with all of this, but it's hard to imagine the licensing was truly insurmountable.

<comment><USER17> More or less everyone I've ever talked to or seen discuss it agrees (including several people in the comments on this blog post) -- Apple Legal felt ZFS was a no-go without patent indemnification from Sun/Oracle. Sun was willing, but Oracle said no as soon as they purchased.

At that point the word came down from Apple Legal to Engineering that it wasn't happening. And there's nothing more insurmountable than your own legal department.

<comment><USER18> "At that point the word came down from Apple Legal to Engineering that it wasn't happening. And there's nothing more insurmountable than your own legal department. "

Just to note: It doesn't really work this way, even at Apple.

It really means "legal was better at arguing their side than whoever argued against them to the SVP/CEO who made the decision"

While apple is worse than most (from talking to friends and counterparts), no company, even Apple, is so silly that the legal department can't be overruled (any general purpose software company that works like that goes bankrupt pretty quickly).

It just takes a really good business case for doing so, and none existed here.

That is,if it had been considered super-mission-critical, it just would have happened anyway, they would have taken the risk.

(I kind of just hate when these stories get portrayed as legal ruling with an iron fist with nobody having any say over them.)

</comment></comment></comment></comment></comment></comment></comment><comment><USER19> People forget that Microsoft has perennially had their Cairo/Object/Whatever FileSystem in development.

<comment><USER20> True but NTFS is also far superior to HPFS, so arguably MSFT doesn't need a replacement for NTFS nearly as badly as Apple needs a replacement for HPFS.

<comment><USER21> Minor nit, but HPFS was OS/2's filesystem. Apple's is HFS (and HFS+).

<comment><USER22> And NTFS was based on HPFS

</comment></comment></comment></comment><comment><USER23> So, according to this article, Apple was making a deal with Sun to use ZFS, and later finally dropped it after an alleged discussion between Steve Jobs and Larry Ellison when Oracle owned it.

My question is why did Apple think they needed to make a deal to use ZFS in the first place, and if so has Canonical (who says they'll ship openZFS with Ubuntu) made a deal with Oracle ?

It's true that OpenZFS is more than Oracle's ZFS, but unless I'm mistaken, the vast majority of code in that project is still owned by Oracle.

This article makes me uneasy.

<comment><USER16> Apple started in 2006 with no deal or coordination with Sun. Later when the FUD started, they were looking for protection from patent lawsuits (i.e. from NetApp), for support and expertise, and, possibly, reassurances around patent clauses within the CDDL with which I'm not an expert.

</comment></comment><comment><USER24> Maybe I'm being irrational, but I would never touch ZFS because Oracle.

</comment><comment><USER25> > this is the moral equivalent of using newspaper as insulation: it's fine > until the completely anticipated calamity destroys everything you hold dear.

How... unnecessarily inflammatory. Hardlinked backups work remarkably well, and are incredibly simple to implement and understand. Of course they can be corrupted, but then again, so can every other form of backup in existence (that said, there are no protections built-in to a hardlinked backup).

<comment><USER26> I work in backup (this has become a core part of my business: [http://macdaddy.io/mac-backup-software/](http://macdaddy.io/mac-backup- software/)) and part of the reason I wrote that is because of the continual reports of Time Machine backups failing to restore when people needed them. The numbers are huge. I wouldn't touch Time Machine in any conditions. I would manually backup before using that. This may be anecdotal evidence, but if you want to see some of the issues people run into with Time Machine just read through some of the posts people make about it: [https://www.google.com/search?q=time+machine+backup+failure&...](https://www.google.com/search?q=time+machine+backup+failure&gws_rd=cr,ssl&ei=lddhV6zQL8G7mwX3u5OABg)

Most of this is indeed directly related to directory backups. I also do Snapshots of sorts, but it only makes hardlinks to files, not directories. That proves to be remarkably more reliable.

<comment><USER27> Hey, I'm interested in trying that. What's your business model? Nagware or limited time trial or what? The price is reasonable but I'd definitely like a long trial.

Anyone else here using it?

<comment><USER26> It gives a month's free trial where it fully functions. Then it says it requires payment when it starts up after that. Though if you don't pay anything it actually continues working. So you have plenty of time to try it out.

</comment></comment></comment></comment><comment><USER28> It's a real shame, because HFS is an absolute abomination. Apple will remain without a reliable, full-featured filesystem for another decade, it seems.

</comment><comment><USER29> ZFS is fantastic until you try to grow a volume. Emphasis on fantastic.

<comment><USER30> What difficulty did you encounter? I've had a pool running since ~2009, originally as 4x750GB, then 4x3TB in 2013, and I recall that the transition was excellent. As oofabz said, the trick is to enable "autoexpand", which can be done even after creation. In fact, I recall that I had replaced each drive, initially seeing no increase in capacity, but after enabling autoexpand the new space was immediately available.

<comment><USER31> You can grow a RAID-Z "vertically" like this, but can't grow it horizontally by adding disks… which is frustrating.

(I'm also frustrated that it's not possible to change redundancy within a vdev — e.g. go from RAID-Z1 to RAID-Z2.)

<comment><USER32> You can grow it horizontally by adding a new vdev. ZFS doesn't allow you to do anything you may ever possibly want to do, but it does allow you to do more than any other RAID solution. It's not perfect but it's still pretty impressive.</comment></comment></comment></comment>


The LAPD Spies on Millions of Innocent Folks - <AUTHOR> http://www.laweekly.com/los-angeles/forget-the-nsa-la-cops-spy-on-millions-of-innocent-folks/Content?oid=4473467 <comment><USER2> No, let's not "forget" about the NSA. Other groups may be doing bad things too, but that doesn't diminish the badness of the bad things done by the NSA (or anyone else).

<comment><USER3> True but Bruce Scheiers panglosian suggestion of just handing over the internal monitoring to the FBI aka the cops is just going to make things worse.

Remberer what the FBI has done in the past (under hoover) compared to what the NSA has not done.

</comment></comment><comment><USER4> Some of this is disturbing and some is not. I don't know why the article makes a big deal out of predictive policing and it's roots in counter-insurgency. Putting police officers where crime is likely to happen is just good management. More power to them. I could care less whether the software was developed for Fallujah. Why would you want to put police resources where they're not needed?

<comment><USER5> Haha, this is funny. I'm one of the co-founders of PredPol, the startup that makes the predictive policing software LA uses. I think it's a stretch to call anything I wrote in my dorm military grade, but I suppose I'll take that as a compliment. For the record, the DoD called us once asking if some of the models we use to predict crime could be used to predict IED locations, but nothing major ever came of it as far as I know. Also, I live in Santa Clara not Fallujah.

P.S. PredPol predicts crime using only the time, place, and type of past crimes using some simple statistical models. All that is public information for municipalities in the US.

<comment><USER6> Can you back this up with some links please?

And anyway, even if the LAPD may not be using anything more sophisticated than PredPol with growing their CCTV array, they will in the future. Think of it like this: right now the data is stored. In 5-10 years it will be cross correlated and profiles will be built on everybody. Thanks to the efficiency, the definition of crime will be expanded. Look at Singapore's law against gum wrappers. Look at local laws against homeless blankets. More to the point - the sites you surf can be cross correlated with the places you visit to indicate a reasonable belief that you may harm your kids and they will be taken away after you've been aubpoenaed in court.

20-30 years from now: court cases initiated by computer and suggested to the DA, based on cross correlated databases. Theories built and presented against you by the eloquent lawyer, with the jury thinking, "yeah this cant be all a coincidence." And a vastly expanded private prison complex.

All in all maybe not a bad thing, but people arent used to living like robots.

<comment><USER7> Not only is omarforgotpwd right, but the article is completely wrong with regard to predictive policing. It was invented by the LAPD w/ the help UCLA researchers in 2008. It is not the result of military research, and was not used by the military until recently. LAPD has repeatedly been credited with it since 2008.. and I was not able to find a single link that backed up the article's claim that it came from the military.

And the program is far from futuristic. Basically, if a certain type of crime has happened in an area recently, the LAPD patrols the area more often. Big deal.

Here's a summary from the FBI:

[http://www.fbi.gov/stats-services/publications/law- enforceme...](http://www.fbi.gov/stats-services/publications/law-enforcement- bulletin/2013/April/predictive-policing-using-technology-to-reduce-crime)

And here's a longer article about it (including the history) from RAND:

[https://www.ncjrs.gov/pdffiles1/nij/grants/243830.pdf](https://www.ncjrs.gov/pdffiles1/nij/grants/243830.pdf)

</comment></comment></comment></comment><comment><USER8> this is creepy, while stopping at a gas station I have noticed a camera scanning customers and their cars in a very robotic way - possibility being scanning faces and car plates.

Where does it end, when and how? Is it a felony to destroy devices that spy on me for which I didn't authorize the gathering of intelligence on me?

I am sorry but all this is really gets under my skin. my 2c.

<comment><USER9> I own some restaurants. We have cameras, too. No, they don't scan customers and cars in any way. You're implying those cameras are owned by the police. You're making stuff up.

<comment><USER10> I've seen steerable cameras in shopping mall parking lots follow shapely, fashionably dressed young women. Also, some cities have deals where the police (or "Public Safety") department monitors cameras that private sector entities buy and install.

I believe that person, in short.

<comment><USER9> And, despite that (if it were true), most do not. Crossing the line of using police in private sector situations is possible because the private company asked them to, such as in large shopping malls.

In any case, it still does not mean it's every camera system throughout the world which would, again, be a false statement.

</comment></comment></comment></comment><comment><USER11> A bit of a linkbait, since the NSA surveillance covers probably 3 billion people at all times and the LAPD covers L.A. with maybe 5 million people.

So the capabilities of the NSA are around 1,000 times bigger than the capabilities of the LAPD.

<comment><USER12> Capabilities of LAPD are probably a _subset_ of NSA's - the latter can probably pull up on demand every information the former gathered.

</comment></comment><comment><USER13> > LAPD's mild-sounding "predictive policing" technique, introduced by former > Chief William Bratton to anticipate where future crime would hit, is > actually a sophisticated system developed not by cops but by the U.S. > military, based on "insurgent" activity in Iraq and civilian casualty > patterns in Afghanistan.

"Two things are infinite: the universe and human stupidity; and I'm not sure about the universe." ― Albert Einstein

</comment><comment><USER14> "Hackers of the world, unite".

Seriously, it's time the resistance starts to coalesce a bit, and hackers get to work mitigating the damage that this stuff does. Hack the facial recognition cameras and scramble the data so they don't recognize a damn thing... hack the license plate database and and change every recognized plate number out for a random number.

Better yet, let's develop technological means to counter this crap. Treat it as damage and route around it, to use an analogy. Let's create wearable devices that blur your face out of video feeds, or a license plate frame that can keep your tag from being read, etc.

The political system has failed us and it's now a technological arms race. And while the NSA may hoover up a lot of the best mathematicians, I'd still wager that there are more smart hackers who don't work for the govt. than ones who do.

</comment><comment><USER15> "Forget the NSA" is taking it a bit far, but I think we should not forget that there are other threats to our privacy. In particular we should not obsess about whether software is "NSA-proof", or imagine that the problem would go away if the NSA's activities were somehow curtailed.

</comment><comment><USER6> Let's skip 10-20 years ahead, ok? The march of technology cannot be stopped. I've always said that terrorism is a problem of technology. Now we see the surveillance state is as well.

The truth is that vast troves of data on people are any organization's crack, whether that organization is an a corporation, a government agency, or a local law enforcement agency.

Good luck taking the crack away. If you think the war on drugs has been ineffective, wait until you try making organizations quit as others are smoking up.

Look around, Hacker News. Embrace the inexorable march of technology. It is our time to disrupt these products with new ones and turn it for good, but wishing it would all stop is more suited to luddites.

</comment><comment><USER16> This reminds me (and I apologize for the OT), I know Singapore also relies heavily on camera surveillance, but is it known whether they then process the data in a similar (i.e. harvest as much as they can) way to LAPD? Are there any known incidents of abuse of that system? Again, sorry about the OT, but the city state intrigues me greatly.

</comment><comment><USER17> How much of this and the NSA are due to the "gee whiz" effect as I call it? These organizations have cool new technology so they want to use it for no other reason than that.

It's like the HTML blink tag it was annoying and pretty much useless but just because it existed people used it.

</comment><comment><USER18> Read this scholarly work for an ever more disturbing description of changes and trends in LA:

[http://www.amazon.com/City-Quartz-Excavating-Future- Angeles/...](http://www.amazon.com/City-Quartz-Excavating-Future- Angeles/dp/0679738061)</comment>


TKE: Modern Tcl/Tk-based text editor - <AUTHOR> http://tke.sourceforge.net/index.html <comment><USER2> I remember when I used to cringe that an application was built with Tcl/Tk because it would be very slow and need quite a bit more memory than a similar application written in C or C++. But, today, I suspect this editor is an order of magnitude faster and an order of magnitude smaller than Atom or VSCode (this is purely speculation, of course...but, I feel like it's a reasonable hunch, based on my experience with Tcl/Tk in the past).

<comment><USER3> Not like C/C++ applications go easy on memory these days, either. When GUI libraries include CSS and JavaScript interpreters, suddenly MFC and Motif look less bloaty…

Never mind Java editors/IDE, which are pretty much standard these days.

<comment><USER4> The only "standard" full-fledged IDEs I can think of that are Java are IntelliJ and Eclipse. Visual Studio (WPF), Xcode (Cocoa), Qt Creator (Qt), KDevelop (KDE Frameworks/Qt), GTK Builder (GTK) are all built with their platform's native toolkit.

Concerning text editors, I think that field is split between Electron-based, Sublime and terminal-based editors. I can't picture users writing in Java editors in 2018.

<comment><USER5> Pycharm, Webstorm, Goland and Intellij, are some of the most used IDEs, all Java based.

<comment><USER6> That's a little disingenuous because they're all JetBrains IDEs and thus are just variations of IntelliJ

</comment></comment></comment></comment></comment><comment><USER7> So, Hackernews, here is what I want you to do. Create a website with "solve this with your editor" challenges where everybody can upload screencasts and compete. :)

An obvious metric would be /time to completion/ but I would also be interested to see /can be done with mouse only while drinking coffee/ or in general /can be done one-handed/, /can be done left handed/ (so the mouse is free) or maybe /keystrokes+clicks/ instead of general timing because it takes the typing speed out of it. Some metric that measures how many shortcuts you have to memorize would be great, too.

Now somebody go and do it! :)

<comment><USER8> There is a very large margin between time I spend considering the solution to a problem and the time I then spend writing it, so my main consideration with an editor is ergonomics. For example, if I can do a change without moving my hands off the home row in 20 seconds, that's better than a 5 second change that involves alternating between the keyboard and the mouse.

<comment><USER9> So you spend a long time considering a change, and then you care about a 15 second difference in the time it takes to apply that change?

<comment><USER10> I think you should reread the GP, what you're responding to is the opposite of what was said :)

</comment></comment></comment></comment><comment><USER11> Back when I was a macOS user (back when we just called it System 7 …) I discovered Alpha: an extensible editor written in TCL. It was pretty amazing, and was what first opened my eyes to what could be done with a scriptable editor.

Oddly enough, it still exists: [https://alphacocoa.sourceforge.io/](https://alphacocoa.sourceforge.io/) (last updated 16 days ago!).

I'm a heavy emacs user nowadays, but there'll always be a soft spot in my heart for Alpha.

<comment><USER12> There seems to be a lot of influence between editors which to me is the most interesting part of all of this. Just looking at TKE's screenshots, it resembles VS Code to a not-insignificant degree, and VS Code and Atom both seem to have been inspired graphically by Light Table, and all of these as well as Alpha have a programmability that's heavily inspired by Emacs, although Alpha's GUI is closer to TextMate which was influenced by BB Edit, and the history of editors is something I'd love to see someone with more knowledge of the history do a more comprehensive write-up of it.

</comment></comment><comment><USER13> I never really got how Multi-Cursor / Multi selection became such a big deal. It really never happens to me that I have to write the same thing on N-lines, and when that happens VIM ninja works just as well.

<comment><USER14> Multiple-cursor is useful when you want to edit lines which have non-trivial edits or doesn't have a common string to use find-replace. simple example

       foo_bar -> fooBar
       bar_baz -> barBaz

Sometimes even this doesn't cut it and have to use mighty Emacs macros. (I'm sure something similar exits for VIM)

<comment><USER15> please correct me if I'm wrong, but wouldn't

:'<,'>s/_b/B/

work in this case?

<comment><USER14> With multiple cursors you are seeing the changes as you are editing. and you have all of the normal editing shortcuts at your disposal. Example, if you made a mistake while typing just hit undo.

<comment><USER16> I would rather add the c option in cases where I'm not 100% sure what I'm doing.

So in this case :'<,'>s/_b/B/c

That let's you step through every change and if something's wrong you can press ESC and u to undo only the last change.

It depends on the actual problem of course, but multicursor edits also get unwieldy if you're editing more than 2 or 3 lines.

What about if the lines are beyond the visible screen?

<comment><USER14> Yes, no silver bullet. But most of my use case I find a generic pattern so I don't check the individual edits. Anything more complex I'll switch to macros.

Btw, I meant undo like global undo which will let you undo the last keypress for _all_ of the cursors. In your case, you meant undo for a particular instance of change I guess.

Also, let's say there is different character after _

      foo_bar -> fooBar
      baz_car -> bazCar
      some_thing -> someThing

Maybe you can do this with regex. but for a new user, he has to look it up. With multiple-cursors, you don't even have to think about it.

However, you can use a macro.

</comment></comment></comment></comment></comment></comment><comment><USER17> Missing DYLD library on my Mac won't let it run. Bug filed - [https://sourceforge.net/p/tke/tickets/55/](https://sourceforge.net/p/tke/tickets/55/)

<comment><USER17> Fixed after installing TK from activestate.

</comment></comment><comment><USER18> Disclaimer: Do not want to start a flamewar and I will continue to use TCL/TK for the forthcoming years.

It is a really pitty that Tcl does not suppport a Lispy alternative interface to the language. I used many times Tcl/TK which saved the day repeatedly. I would like to have a really nice CL or Scheme interface to all TCL/TK goodies or support alternative syntax like JS or JVM languages.

Once there was a Scipad. What happened with that project?

<comment><USER19> IIRC, LTK provides a comprehensive binding to Tk for Common Lisp.

<comment><USER20> I'm here to second LTK :-). It's a while since I last used it (2012, 2013, I think?) but it was, and I'm sure it still is, a very good library. It's easy to get started with, easy to work with, easy to debug.

</comment></comment></comment><comment><USER21> So I tried to install it and got fancy error:

$ ./install.tcl

...skipped...

Copying data to lib/tke/data... done.

Copying doc to lib/tke/doc... done.

Copying lib to lib/tke/lib... error!

      error copying "lib" to "lib/tke/lib": "lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/...skipped.../tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/lib/tke/doc/md/TKE Developer Guide/Plugin Development/Safe (Untrusted) Interpreter Description.md": file name too long

<comment><USER22> That looks like what you would get if you asked it to install in the same directory you downloaded it to.

It would try to copy lib/ into itself, resulting in your "lib/tke/lib/tke/lib/tke/..." mess.

Like:

      $ mkdir lib
      $ mkdir lib/tke
      $ tclsh
      % file copy lib lib/tke/lib
      error copying "lib" to "lib/tke/lib": "lib/tke/lib/tke/[cut off long string here]": file name too long

Specify a root directory other than the current directory and it should work.

I wonder if tcl should disallow copying a directory into itself.

Edit: I opened a bug report for tcl: [https://core.tcl.tk/tcl/tktview/82049f96f841214bb8cee18e1bf8...](https://core.tcl.tk/tcl/tktview/82049f96f841214bb8cee18e1bf8f84aa25ed9aa)

</comment></comment><comment><USER23> Why is this hosted on Sourceforge? Looks fishy. Is it a bitcoin miner?

<comment><USER24> SourceForge has not been fishy for a while now.

<comment><USER25> It's a little hard to forget.

<comment><USER24> I mean, it's your loss. There's great software there.

</comment></comment></comment></comment><comment><USER26> This appears to be non-high-DPI-aware on Windows (on Win10, the OS pixel- scales it on a 4K display). Is it possible to fix, or a fundamental Tk limitation?

<comment><USER27> >or a fundamental Tk limitation?

This.

<comment><USER28> [https://wiki.tcl-lang.org/page/tk+scaling](https://wiki.tcl- lang.org/page/tk+scaling)

Tk has perfectly good DPI scaling.

<comment><USER26> But is it capable of automatically applying whatever the current OS configuration is?

</comment></comment></comment></comment><comment><USER29> What about the "Native Vim Support" listed on the homepage? I can't find any more info on that. Has anyone tried it?

<comment><USER30> I tried some basic motions and the editor crashed

<comment><USER31> Could you elaborate on this? I use TKE in Vim mode every day and haven't run into issues with supported Vim motions. What motions did you try doing? Tcl/Tk is usually pretty difficult to crash.

<comment><USER30> I tried it again just now.

1\. Opened TKE

2\. Changed to insert mode

3\. Typed some random characters

4\. Pressed ESC

5\. Press b

TKE crashed

I'm on Windows 10, recently fresh install.

<comment><USER31> Never mind. I get the same problem with the version that comes with the bundled version of TKE. I appreciate the information!

<comment><USER30> Happy to help

</comment></comment></comment></comment></comment></comment><comment><USER32> I read 'Modem' instead of 'Modern' and it still made sense.

</comment><comment><USER3> Doesn't seem to package Tcl/Tk (despite things being one of its strong points), so make sure your local system has a recent enough version.

<comment><USER18> Undrowish is your friend?

</comment></comment><comment><USER33> The german localisation is so so bad. If you speak german and you need a laugh please install it.

The document view is called "Ms. Pacman" Hahah :D

<comment><USER31> TKE uses some automation to attempt to provide translations (as if you haven't already guessed). If you have some time, fixing the translation file would be greatly appreciated!

</comment></comment><comment><USER34> I don't trust SourceForge.

</comment><comment><USER35> Back in the day my editor of choice on classic MacOS was called Alpha, also extensible in Tcl. Can't find any version of it for OSX. I'll take this one for a spin later!

But... sourceforge? Really?!

<comment><USER36> There should be a bot or a separate feature on HN which would add a FAQ section automatically based on a title, a domain and maybe if we are wild on contents. So when something is hosted on Source Forge this link could be presented: [https://arstechnica.com/information- technology/2016/06/under...](https://arstechnica.com/information- technology/2016/06/under-new-management-sourceforge-moves-to-put-badness-in- past/)

<comment><USER16> I find it surprising how merciless some people are in remembering this issue with Sourceforge.

Considering how loved Microsoft is these days when it was a much worse player in the past, likely even set back personal computing a decade, and all their anticompetetive actions.

I chalk it up as some kind of disappointment by expecting better of SF than others.

</comment></comment></comment><comment><USER37> "The Free Software Foundation recently released an "Ethical Repository Criteria" list, and it gave SourceForge a failing grade"

Just saying...

<comment><USER38> According to GNU's page on this, GitHub also got a failing grade: [0]

Are you making this same comment every time someone posts a project on GitHub?

[0]: [https://www.gnu.org/software/repo-criteria- evaluation.html](https://www.gnu.org/software/repo-criteria-evaluation.html)

</comment></comment><comment><USER39> Wow, long time not seen Tcl/Tk. I came in touch with it and I can't find anything nice to say about Tcl. So a round of applause to you for building an editor with it.</comment>