Oracle vs. PostgreSQL – A Comment - <AUTHOR> https://www.postgresql.org/message-id/flat/0959C81A-5B07-4D04-A6B1-57AA78A9A553%40gmail.com <comment><USER2> As a developer:

\- No license fees is huge. My company saves tens of thousands on license fees when we can't really afford it.

\- The ability to set up environments super quickly is amazing.

\- Rollback of DDLs is huge for testing migrations

\- The backup features aren't broken by default. I've spent hours researching how to back up an oracle db and transfer it to another. And at that point versions matter. With postures I think I spent 30 minutes total figuring it out over the years.

Overall I am a huge fan of Postgres having used it for about half of my career and oracle for the other half. I genuinely hope I never use oracle again.

<comment><USER3> > Rollback of DDLs

Oracle can't roll back these (create table/drop index etc)? That really surprises me. Pretty certain MSSQL can, because I've used it. Amazed, actually, that oracle can't.

<comment><USER4> Very few databases support transactional DDL, meaning that you can do something like:

      BEGIN;
      DROP TABLE foo;
      CREATE TABLE bar (t int);
      ROLLBACK;

...and it will just work as you expect. Oracle doesn't, nor does MSSQL.

As far as I know, other than Postgres, only Sybase ASE, Informix, DB2 UDB, and Firebird support transaction DDL.

<comment><USER5> > Very few databases support transactional DDL

Postgres, SQL Server, Firebird, DB2, SQLite, Ingres, Informix, Teradata, Vertica all support transactional DDL

<comment><USER6> SQL Server partially supports it - indexes for example are not versioned which causes snapshot transactions to fail if someone rebuilds an index - even if it's not in scope of the snapshot.

<comment><USER3> That doesn't sound right by my experience, Could you give a link please? I'm concerned I've not heard of this. Probably because it's MVCC/snapshot isolation which I'm not familiar with.

</comment></comment></comment></comment></comment></comment><comment><USER7> I'm a big fan of Postgres, and it's got plenty going for it. That's not to say Oracle isn't a good database in its own right. The knocks against Oracle tend to be lock-in, complexity, price, but rather than go in a checklist comparison I'd rather say what's unique about Postgres:

\- Based on its license it's very hard for any one company or individual to "own" Postgres, this makes risk of a company as a bad actor being minimized pretty appealing

\- Its geospatial capabilities put it as the most advanced geospatial database, only ESRI software really stands to beat it here

\- The improvements for app devs from things like JSON, to a variety of index types put it in unique territory among relational databases

\- The extension framework is truly unique and stands to be where a lot of future innovation happens.

<comment><USER8> > Its geospatial capabilities put it as the most advanced geospatial database, > only ESRI software really stands to beat it here

Where does PostGIS stand in comparison?

<comment><USER9> The original comment was about how few packages and how little space Postgres takes. PostGIS is good but it pulls in a _lot_ of extra packages.

I hate Oracle as much as anyone but this is no longer a fair comparison. If you're bragging about how good PostGIS is, you're no longer anywhere near a 66MB install. More like (IIRC) 5 to 10 times that.

<comment><USER10> 660 mb disk space?

I can afford that.

And I think that most people can.

<comment><USER11> For the record, on Debian unstable:

      root@pg1:~# LANG=C apt install postgresql-12
      Reading package lists... Done
      [...]
      0 upgraded, 32 newly installed, 0 to remove and 0 not upgraded.
      Need to get 59.7 MB of archives.
      After this operation, 240 MB of additional disk space will be used.
      Do you want to continue? [Y/n] ^C
      root@pg1:~# LANG=C apt install postgresql-12 postgresql-12-postgis-3
      Reading package lists... Done
      [...]
      0 upgraded, 105 newly installed, 0 to remove and 0 not upgraded.
      Need to get 104 MB of archives.
      After this operation, 418 MB of additional disk space will be used.
      Do you want to continue? [Y/n]

I think the addition of LLVM for JIT execution of plans added a lot to the Postgres install baseline (at least in distribution packages, you can compile a much leaner postgres yourself).

<comment><USER12> Due to the way that the LLVM dependency in postgres works, it could be packaged separately from the base postgres server package. The LLVM interfacing code is runtime loaded, and there's no error if "llvmjit.so" is not on the system, even when the server was built with LLVM support. It's basically a packager's choice whether to do so, or not.

</comment></comment></comment></comment></comment></comment><comment><USER13> I bookmarked this tweet from 2012 - "I wish I had enough money to run Oracle instead of Postgres." "Why do you want to do that?" "I don't, I just wish I had enough money to."

</comment><comment><USER14> I've used plenty of Oracle; it's a poor choice (probably the worst) for organisations of any size. People buy Oracle in large corporations because that's what their leaders and their team know, and it helps them stay relevant in the company. Especially in places where daily work is more about engaging in office politics than dealing with technology.

And the other one is bribing. From mild to criminal, involving payments via vendors to decision makers - [http://allthingsd.com/20120816/oracle-settles- sec-bribery-ca...](http://allthingsd.com/20120816/oracle-settles-sec-bribery- case-for-2-million/)

<comment><USER15> It's often higher performance and with better HA solutions than any other options. I have a lot of dislike for the company, but it's silly to say it's a poor choice for any organization size..

</comment></comment><comment> phoe-krk Copying from [https://stackoverflow.com/questions/12115397/is-it- against-l...](https://stackoverflow.com/questions/12115397/is-it-against- license-to-publish-oracle-and-sql-server-performance-test):

 _The standard license ([http://www.oracle.com/technetwork/licenses/standard- license-...](http://www.oracle.com/technetwork/licenses/standard- license-152015.html)) you agree to when you download software from the Oracle Technology Network (OTN) does state that you're not allowed to disclose benchmarks._

        You may not:
        <<list of things you cannot do>>
        - disclose results of any program benchmark tests without our prior consent.

I sadly suspect that Paul Förster might need a lawyer if anyone from Oracle finds out about that post. Which, given that this is trending on Hacker News, they easily might.

<comment><USER16> > You may not: <<list of things you cannot do>>

I mean... does _anyone_ here think this is in any way reasonable? Is this even legal?

<comment><USER17> It's not about making it reasonable, it's an open threat to punish anyone who does decide to benchmark Oracle. Nobody's going to win the case, but whoever violates the term will surely wind up bankrupt defending themselves.

<comment><USER18> Publish benchmarks as an LLC, then just go ahead and declare bankruptcy.

<comment><USER19> Better yet, publish as a Russian or Chinese resident. Disclose results to a (preferably not Oracle-using) tech newspaper on the condition of anonymity.

<comment><USER20> Last time I checked, Oracle had some kind of branch in Russia. Not sure whether that clause is enforceable within Russia laws, but they could just bribe police, so they would make one's life quite miserable.

Money is money everywhere. May be even more so in Russia.

I have no idea about China, though.

</comment></comment></comment></comment></comment></comment><comment><USER20> That's not a very useful comparison. Databases are made to execute queries, not to install them. The only useful metric is performance and features (and price, of course). Sure, Oracle is bloated and pain to manage, but if it works faster, provides unique features and costs less in the end, people will use it.

<comment><USER21> Right but by that metric Oracle is archaic.

Just look at Postgres[0] supported column data types and then look at Oracle[1]. Better data types means more tightly defined columns, which means fewer bugs/less defensive programming/reduced maintenance/reduced code complexity.

No doubt someone will be along shortly to tell me "you don't NEED it!" and then tell me how to hack constraints into making it act like something it is not, but I don't care. I have no interest in "forcing" Oracle to act like a modern database through repeatedly having to re-define 30+ year old common data types (e.g. Int32, Int64, Long, Bool, etc).

As a developer I /hate/ working with Oracle. It is just cludgy. I don't care how many times people point to vague indefinables for why it is "superior," it sucks to work with. Microsoft Sql Server is better, and Postgres/Sqlite are superb.

Just the fact Postgres has a date (with no-time) column means it outright wins. In Oracle, we stored them as <Date> 12:00 but that's a gotcha since it can get timezone adjusted in the pipeline (e.g. <Date> 12:00 becomes <Date> 08:00) and the result be subtly broken. Cannot time-zone adjust a real date type.

[0] [https://www.postgresql.org/docs/9.5/datatype.html](https://www.postgresql.org/docs/9.5/datatype.html)

[1] [https://docs.oracle.com/cd/B28359_01/server.111/b28318/datat...](https://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT012)

<comment><USER22> You should store dates with timezone or you can't make calculations like how old is this post. You could base it off system time, but then the calculation have to take into account summer/winter time.

<comment><USER23> Everything in the DB should be UTC. Anything else is crazy.

<comment><USER24> This isn't true.

For example: If a user schedules an event to happen at 15:35 on July 29th 2021 IST, you _cannot_ know with certainty what the equivalent UTC value is. You know what it would be _assuming_ the relationship between IST and UTC stays the same between now and next year. If India suddenly decides to implement some sort of DST, or make any other changes to the definition to IST, the UTC value you stored is now wrong.

Timezones are political, but they're also how people organise their lives. The user's local timezone is context that you can't just discard.

<comment><USER25> > If India suddenly decides to implement some sort of DST, or make any other > changes to the definition to IST, the UTC value you stored is now wrong.

It is not wrong. When timezones change, the database that contains that info is updated - but it still retains information about historical rules, precisely so that earlier dates can still be converted reliably.

On the other hand, if you use local times, then you are not able to distinguish between pre- and post-clock change, when the same time repeats twice.

<comment><USER24> You're not converting a historic date though, you're converting a future date. And that's an inherently uncertain process. It is literally impossible to know what UTC time 2021-07-29T15:35:00 IST refers to _until it happens_. The Indian government is free to redefine IST as they wish, and could choose to do that at 15:34:59.

</comment></comment></comment></comment></comment></comment></comment><comment><USER26> It has been known for DECADES that Oracle is outrageously expensive compared to the competition. But the unwillingness of larger companies to go with open- source databases which have no multi-billion dollar company behind them has kept Oracle in the saddle all these years.

<comment><USER27> I think that mission critical, legacy systems from a time before there was big OSS acceptance at the CTO level is the main reason. I'm not sure how many greenfield projects are using Oracle, but I'd expect that is rapidly decreasing over time. However, if you've had an Oracle db running for 20 years, and the cost of screwing up a migration starts at 9 figures, and runs into the 10 figures, then Oracle have you by the cost-benefit balls.

<comment><USER28> Oracle consultant here -> The Oracle world is shrinking admittedly and its shrinking from the smaller end up. I almost never get called by a company with less then 500 users or $100k a year of licence obligations.

Oracle is a tried and tested safe bet when implementing corp wide, multi year projects. The HN crowd won't like it (and for good reason) but CTOs will always bet on name recognition when millions or billions are on the line.

<comment><USER29> As a fellow Oracle consultant, I see the same. Most of the small clients only involve me in migration projects to other DBs now (postgres or mysql), but the ones with >$1M licenses continue to pay their support and migrate to 19c.

But that's also because it's way harder to migrate a huge project/organization to a completely different DB - it's just cheaper and less risky to continue with the current one.

</comment></comment></comment></comment><comment><USER30> > What I especially hate about Oracle (despite the license costs, of course) > is that it has so many bugs, bugs and even more bugs and one keeps on > searching for patches all day, generating lot of downtime. Applying a PSU or > RU is mostly not enough.

Obligatory: [https://news.ycombinator.com/item?id=18442941](https://news.ycombinator.com/item?id=18442941)

<comment><USER31> After reading that no serious person could ever dream of having any serious enterprise be based on Oracle DB.

</comment></comment><comment><USER32> "create stand alone database: ~30m"

If creating a database takes 30 minutes, there is something extremely wrong either in the procedure the person used to do so, or in the Oracle software itself.

<comment> daniel-levin Well, if the database has the number of tables, triggers, stored procedures, etc that SAP or Oracle's ERP has then this seems less unreasonable. We're talking thousands

<comment><USER29> It's not about an application DB, it's just for the system dictionaries and metadata, the file structure and so on.

</comment></comment></comment><comment><USER33> I am sure there are many areas that Oracle is still technically better than Postgre.

What I am interested in, is what are those features / problems. And if Postgre has a roadmap for those improvement.

I mean not just Oracle. Outside of HN the majority of dev and cooperation still swears by MySQL. I often wished HN instead of constantly hyping a technology, tell me up front what are the Cons. And hopefully everyone will make up their own mind whether the Pros and the Cons are worth trying it out.

<comment><USER20> One reason that I've heard is cluster, Oracle supports clustering while Postgres only provides half-baked solutions. But that was years ago, so I'd like for correction.

</comment></comment><comment><USER34> For those still on Oracle, why? Is it regulations or executives demanding certified solutions?

And if so then with so many bugs at what point does certification become a negative signal?

<comment><USER35> \- query hints

\- planner hints

\- better statistics (including ways to manually create statistics)

\- no vacuum

\- automatic planner adjustment when true cost was off

\- better planning for prepared statements

\- active-active clustering with RAC

\- vendor support for running on SAN including snapshots

\- usable query analysis tools provided by the vendor (pg_stat_statements alone doesn't cut it)

\- datapump much faster than pg_dump

\- better connection management

\- out of the box backup tooling

edit: I haven't used Oracle in 4 years, all of that was available to me back then.

<comment><USER21> Several of these are "features" exist to fix broken parts of Oracle (like query/planner hints, planner adjustment, etc). Officially (per Oracle) the planner should be good enough so you never need to use a hint, but realistically all of these are "features" because the built-in systems aren't good.

So, granted, other databases don't have Oracle's hacks to fix their broken stuff but I'm not sure why that is an argument FOR using Oracle rather than AGAINST. Hints are fragile hacks.

<comment><USER20> So what do you do when you encounter bug in Postgres planner? File a bug and wait for months or years until fix is released? Hack postgres source and fork it? Using hints sounds like a more sane solution. Nobody's perfect. Being able to work around is better than not being able to.

</comment></comment></comment></comment><comment><USER36> Honest question, what is that with former Oracle clients and SUSE LInux?

Did the Novell ownership make it similar/alternative to Oracle stuff? Or is it just that it was the first linux with a paid support option and those folks likely used it earlier because of this?

Asking for people that actually use openSUSE today, not other pundits with baseless hypothesis like myself :)

<comment><USER37> SUSE is reasonably popular (it's to Europe as Red Hat is to the USA, if I understand right), and SLES is (like openSUSE) RPM-compatible, making it reasonably friendly to large enterprise software packages (like, say, Oracle DB). I'd expect most people using Oracle DB to be doing so on either SLES or RHEL (or some derivative of the latter, like Oracle Linux).

</comment></comment><comment><USER38> With the amount of hype and mind share micro-services attract, I hope the era of large database clusters like Oracle comes to an end.

At the system level, even Oracle has to do some sort of message passing stuff to be able to distributed databases.

With the availability of streaming services, resilient distributed computation and data storage architectures, I hope companies like Oracle die a slow, but graceful death.

PostgreSQL and advanced database systems like FoundationDB, with help of stream / event processing systems, should be able to replace large Oracle clusters.

The problem of "lock-in" is a business problem and ought to be solved my the MBA's in my view.

<comment><USER39> There will always be a lot of use for large databases. PostgreSQL does provide some under-the-hood features for doing distributed db's (such as the PREPARE TRANSACTION extension) but the actual implementation work is left to the user - there's no such thing as a "one size fits all" solution in this domain.

<comment><USER38> Exactly, so, what use cases is Oracle best suited for, situations where Postgres cannot be a good fit?

<comment><USER3> When you have a sore back from lugging around your wallet, and it needs lightening for your own good.

Not that MSSQL isn't heading that way, and getting more weird and buggy all the time.

</comment></comment></comment></comment><comment><USER40> Anyone here use Patroni for automated high availability with postgres? Does it "just work" or do you need a lot of housekeeping?

<comment><USER27> We recently rolled out Patroni on k8s and it definitely does not "just work". I suppose once you get it up and running, there's some truth to that, but it's one of the most hostile pieces of software I've come across. This isn't a complaint, after all, Zalando don't owe me anything. But the documentation, the project structure, the contributors...it all reveals very clearly that this is really just some internal tooling that they happen to make public, as opposed to a first-class OSS project. Unfortunately it's also the best Postgres HA system out there, but it's truly a massive PITA to get setup and it's extremely opinionated about things that it doesn't need to be.

<comment><USER41> Patroni was openly developed from day 0. The repo was created in early July 2015, but before that it was living as the fork of Compose Governor.

The Spilo docker container which packages PostgreSQL + Patroni was also always publicly available from the first day. I agree, the Spilo is a bit opinionated due to the way how it is used at Zalando.

These two projects have quite a long history and originally weren't even targeted to be deployed on K8s because back in 2015 K8s wasn't absolutely suited for running stateful workloads.

The most opinionated one is Zalando Postgres-Operator, and yes, first it was the internal tooling and was solving our specific problems. Now I would also argue that with such an amount of external contributors it already became a way more general solution.

After all, Patroni is so general, that we call it a template for PostgreSQL HA. You can take it and build something that you need/want without relying on Spilo and Zalando Postgres-Operator. Speaking of Patroni@K8s, there are already two very nice examples: Crunchy Data PostgreSQL Operator and StackGres are both relying on Patroni for running PostgreSQL HA on K8s.

<comment><USER27> Hi Cyber - yes I know it has a very active community, and you and I have interacted on github before. But I find this response very similar to github: it's a template, so build whatever you like with it. That's not what most people want, and that kind of a reply reinforces my comment. I don't use React because I want a template for for building a reactive application. I use it because it does all the things I don't want to have to be concerned with. Like I said, I don't think any project needs defense. I thank you all for the work you've done. But it is not the easiest bit of kit nor the most helpful/inclusive community.

</comment></comment></comment></comment><comment><USER42> Using Oracle over PostgreSQL in public company is a breach of fiduciary duty.

</comment><comment><USER43> The real surprising part of this benchmark to me is how quick it was to compile PgSQL from source.

Is it pure C? Of course, building a DB is not something you worry too much everyday (unless you're developing it), but it seems an interesting fact.

<comment><USER44> Depends a lot on what machine you are using and how parallelized the compile script is. Modern CPUs (threadripper 39x0Xs) can compile the Linux kernel in under 30s. With that in mind, does is it really surprising that Postgres can take 3.30m?

<comment><USER43> The Linux Kernel is probably more paralelizable than PostgreSQL (due to the device drivers)

It would be interesting to know how long does that system that takes 30s for the LK compiles PostgreSQL

</comment></comment></comment><comment><USER45> I seriously doubt that the author has 20 years of Oracle DBA experience yet not know why Oracle takes up more disk space that Postgres. There are so many features in Oracle for which there is no equivalent in Postgres.

-Sharding

-Java Pool

-Oracle Apex

-DB containers and pluggable databases

Many more that I am too lazy to list .

All of these come pre packaged with Oracle. If you are in an Organization that has 1000s of Oracle db's per org, you quickly understand that license cost are a minute number but dba and developers are much more expensive .

<comment><USER46> License cost tend to be negligeable compared to the cost of devs, dbas,sysadmins, etc, that's true.

But at the same time, it's a can be a huge speed bump in term of procurement. Waiting several weeks for accounting to accept the procurement of a license can really damage business or development speed.

It also adds significant admin load to track the license pool correctly and can represent a legal risk when inevitably, someone starts exceeding the terms of license (db size or db clones, or increase in hardware).

</comment></comment><comment><USER47> These don't seem like generally useful metrics for judging or comparing a database.

Is this how experienced DBAs commonly see the world?

<comment><USER48> Some of these things matter; they are not the main factor, but it something you take in consideration in the bigger picture.

</comment></comment><comment><USER49> Meh.

We use Oracle's (newish) autonomous database offering, and haven't really experienced any bugs at all. No worries about backups, very little DBA time, and the on-demand licensing makes it quite economical. We just get on with it, and couldn't be happier.

Of course, YRMV.

<comment><USER31> Have fun when Larry decides he want another yacht and his license goons come by to exploit the lock in you gave created for yourself.

<comment><USER49> Yes, I was expecting this comment. A tired cliche I've been hearing for years...

<comment><USER31> It is based on practical experience from multiple companies who ended up in precisely this situation.

</comment></comment></comment></comment><comment><USER50> It must be so depressing to work at Oracle developing the database - I imagine the source code is a monstrosity.

</comment><comment><USER51> Is DB2 dead ?

<comment><USER52> My company uses it all the time. It's an absolutely rock-solid database and I've never had any issues with it. They just released their new containerized version a few months back and have recently simplified their licensing rather significantly.

One of my favorite features is the "time travel" query. If you enable this feature on one or more tables you can essentially say "give the results of this query as it would have been at time x". I don't know if anyone else provides that, but it's pretty great stuff.

<comment><USER53> Bitemporalism a la SQL:2011 has been partly or wholly implemented by several RDBMSes at this point. Off the top of my head SQL Server, Oracle and MariaDB have it as well as DB2.

I'm looking forward to seeing it in PostgreSQL.

<comment><USER54> Check out [https://github.com/arkhipov/temporal_tables](https://github.com/arkhipov/temporal_tables) or [https://github.com/scalegenius/pg_bitemporal](https://github.com/scalegenius/pg_bitemporal)

<comment><USER53> I'm familiar with these and they are useful, but I would greatly prefer mainline support using the SQL standard. A mainline implementation is far more likely to lead to optimisations being made to the query planner, indices, disk formats etc.

<comment><USER55> You may be pleased to know that someone is actively working on this. There was a presentation [1] by the author Paul A. Jungwirth at this year's PGCon last week.

[1]: [https://www.pgcon.org/events/pgcon_2020/schedule/session/100...](https://www.pgcon.org/events/pgcon_2020/schedule/session/100-progress- adding-sql2011-valid-time-to-postgres/)

</comment></comment></comment></comment></comment></comment><comment><USER56> I had a similar experience to this at an early programming internship while I was in college 20 years ago.

I was working on some component and needed to add a new table to our database. I was fairly new to SQL at the time, so I wanted to do some experimentation and prototyping on my own, before submitting the schema changes to our DBA in order to get them into the shared dev database.

Oracle did have a free trial version you could download for dev purposes or learning or whatever, but like this mentions, it was slow and cumbersome to set up that I soon decided it would be faster to spin up a PostgresQL database, make any necessary changes to our schema and code to be compatible with Postgres, and do my prototyping there, then submit the schema modification request to our DBA. So that's what I did; it took a single evening to do all of that in Postgres, even for someone who was pretty much brand new to SQL.

After I submitted my schema chages for review, rather than emailing review comments back, my DBA made me come down for a meeting to explain the issues. Of course this was intimidating to me as a young itern; had I done something so wrong that it deserved a talking to?

After all that, it turns out the issue was that I had ordered a VARCHAR column before some other column of fixed width in the schema of the new table; and apparently, it's preferable to order all fixed width columns before all variable width columns in order to speed up the column accesses. I agreed with the DBA that I could change the order of the columns, though I did have to point out that this particular table was a table of worldwide regions like "North America", "South America", etc, and that there would never be more than 5-10 of these, so any optimization of this particular table was likely premature.

After all that experience; the complexity of just getting a dev environment up, the fact that production instances cost somewhere around ~$50,000 per CPU per year, the fact that we had a full time DBA who was spending a substantial fraction of her job letting interns know that they needed to apply some trivial optimization that you would expect such an expensive database to just do for you automatically, I resolved to never touch Oracle again if I could avoid it, and have had good luck in that I've never had to deal with Oracle in any jobs since.

Funny thing was that the project I was working on was named "ASAP" which officially had no expansion but unofficially stood for "Another Siebel Avoidance Project", because we were actually using our Oracle database as a place to dump information for which the primary store was Siebel, due to how much more of a pain it was to interact directly with Siebel so doing a periodic dump into Oracle and then building our API on top of Oracle was a better choice.

</comment><comment><USER57> >" create stand alone database: ~30m"

Something is oddly wrong in his tests if it took him 30 minutes to create an oracle database.

<comment><USER28> Go deploy a standard Oracle 19c multitenant database on windows server 2016, time it, then come back and post results.

I bet its pretty close to 30m based on experience.

</comment></comment><comment><USER58> Is vacuumin postgres still basically means that you need downtime?

<comment><USER19> Vacuuming is online, with some performance hit while it's underway.

<comment><USER59> The latest release has multi-threaded vacuuming so it goes much quicker these days.

<comment><USER60> Aside of auto vacuuming, there is also VACUUM FULL [1] which does an exclusive lock on the table. If you look for an alternative option for reorganizing tables in online mode, try the pg_repack extension [2].

[1] [https://www.postgresql.org/docs/current/sql- vacuum.html](https://www.postgresql.org/docs/current/sql-vacuum.html) [2] [https://reorg.github.io/pg_repack/](https://reorg.github.io/pg_repack/)

</comment></comment></comment></comment><comment><USER61> I'm not as familiar with Oracle, but surely it is providing significant benefits or large organizations would be dumping it and running to more reliable alternatives. These time estimates are also not very pertinent to the actual running of a large database. Nor do they speak to the various technical problems one has when running a big db that is mission critical.

Lots of the classic hn "how can they be so stupid?" comments. Give the cto's more credit. Just because you write JavaScript and used mongodb once does not make you an expert on Oracle or running a very large business.

<comment><USER62> It's still used in a lot of places because either some bought in ERP system requires it, or because internal software was developed on it WAY back when, when either Postgres didn't exist, or didn't have as many features and no companies providing paid support.

They now have a problem - and it would probably cost more than the yearly cost of Oracle to migrate.

</comment></comment><comment><USER63> 1) FYI: Oracle Enterprise is basically dead in Silicon Valley for new projects (because it doesn't scale financially.) Every Oracle DBA I know transitioned to MySQL over a decade ago, and they look at you funny when you ask about Oracle.

2) Oracle Enterprise is free to use for dev/qa, but each prod instance costs money.

3) The contraint on publishing benchmark results is not what devs think. It's to prevent poorly conducted bm efforts, not really to hide anything. A vendor can't run around defending itself against non-DBAs doing benchmarks. Most of the links to results on HN admit, "We tuned our fave database, and used the defaults for the other database." Seriously.

Having said that, you can publish benchmark scripts, which is what MySQL did. That script moved the whole industry forward wrt reliability and performance, as MySQL was the only database that could pass initially. :)

Source: DBA.

</comment><comment><USER64> We could sum up the post as:

"I don't like Oracle DB because:

\- "Takes up more space

\- "Is slower to start/stop/init

\- "Is not free

\- "Has bugs"

Umm... Sure, Oracle's slower to start/stop. Sure, it takes up more space. So what though?

And then, "it has a lot of bugs and that causes downtime." Would be great to list some examples. All software has bugs.

Why is this on the front page? Does it have any value what so ever other than "someone found a free alternative to Oracle DB"..?

<comment><USER65> You took time to criticize the post for being upvoted despite not being deep enough / giving enough examples.

It's likely upvoted because most of us in the industry have _no_ love for Oracle and confirmation of that bias feels good.

Turnabout is fair play:

Why don't you give some examples of why a startup doing a greenfield project should use Oracle today?

<comment><USER66> Data point of 1 - we use Oracle in our greenfield platform (in 2018). My reasoning:

\- our engineers already know Oracle (this is absolutely reason #1). We don't need to get into religious wars about software, just to write good code quickly.

\- Oracle is cheap enough for our needs. The price of an oracle RDS instance is immaterial in the grand scheme of things. We are saas so our customers will never be installing our software.

\- noone ever got fired for buying Oracle. When our customers security teams grill us, running on Oracle and Java ticks one box on their spreadsheet. Same is true if we get acquired.

\- Oracle is hugely scalable. Even if/when we get super big and successful, we won't need to change our database - there's always a bigger Oracle instance.

\- Oracle is insanely reliable. In my career I've never seen data loss on Oracle that was not caused by human error. I totally trust that that will be the case going forward as well.

\- as a company, oracle's not going away.

I'm sure some of these apply to postgres as well - but your question wasn't "which is better", which is a much harder question to answer.

<comment><USER20> I can't say that I saw data loss caused by Oracle. But I saw plenty of cases where Oracle required manual intervention to be able to start up after something gone wrong. I never understood why Oracle does not self heal, because those interventions were obvious. I don't have much production experience with other databases, so I can't comment about that, but it was sometimes as simple as power loss which caused Oracle failing to start until you run some mumbo jumbo from sysdba.</comment></comment></comment></comment>


The Era of Easy Recycling May Be Coming to an End - <AUTHOR> https://fivethirtyeight.com/features/the-era-of-easy-recycling-may-be-coming-to-an-end/ <comment><USER2> The article points out that there are significant benefits to single stream:

\- 80% recycle instead of 29% \- Fewer trucks \- Less fuel \- Fewer staff

Switching back to multi-stream is misguided. Even with multi-stream recycling you still need to deal with contamination. It's going to be even harder to re- educate people that are used to single stream.

Why not focus on better sorting solutions? It is easier to teach a machine learning algorithm to sort based on computer vision than it is to get 325 million people to change their behavior.

</comment><comment><USER3> It would be very helpful if Amazon's packaging was recyclable. Can we get Amazon to do that?</comment>


Think Like a VC - <AUTHOR> http://dbasch.posterous.com/think-like-a-vc

<comment><USER2> _When you first meet a VC, he/she will be trying to assess whether you are looking for a home run, or would be content with an early exit... "how does your company get to make tens of millions a year" they want to know that you are seriously considering building something big... They are interested in your reaction, your body language, and the fact that you've spent brain cycles on this._

^ I completely agree with this. I've been asked many times "How big will this get?", and being the modest person I am I would reply "I don't know.", because I am a realist and I know things can be hit and miss -- I really didn't know... but I've since learned that modesty doesn't sell. At all. Be ready to answer this question.

<comment><USER3> "Hard to say, the business might need to change in order to be successful."

[http://37signals.com/svn/posts/1805-lets-just-call-plans- wha...](http://37signals.com/svn/posts/1805-lets-just-call-plans-what-they- are-guesses)

</comment></comment><comment><USER4> The trend of celebrating VCs like gods is such a vacuous endeavor.

<comment><USER5> Agreed, but the post didn't do that. It painted a pretty accurate picture of VCs as people with a big pile of money that they want and need to turn into more money.

About the only thing I found objectionable is the equation of "changing the world" to "making a shit-ton of money". These are not synonymous, there are plenty of efforts in one category but not the other.

</comment></comment><comment><USER6> If we thought like a VC we wouldn't get any work done, what with all of the hookers and blow.</comment>


Email gateways and gatekeeping - <AUTHOR> https://www.labbott.name/blog/2020/09/01/emailgateway.html <comment><USER2> Email is generally undervalued by most people I know.

We should realize its inherent value as the location to send messages to a user at a domain, and work tools to fix people's UX problems. All these other messaging services are just skirting the problem, and generally reducing my ownership of the system.

I say this as someone with a barely functioning inbox...

<comment><USER3> >We should realize its inherent value as the location to send messages to a user at a domain, and work tools to fix people's UX problems. All these other messaging services are just skirting the problem, and generally reducing my ownership of the system.

try matrix.org

</comment></comment><comment><USER4> Both this post and the original that inspired it a pretty well balanced, and don't really say anything close to "Email sucks, let's do everything different!" which is good. I guess I'm just old enough now that I've been reading "Death to email" and "This new thing is going to replace email" for so long I now thing nothing will ever replace email. I bet at some point I even thought "Death to email" and now email is just a part of life.

I liked this quote from the linked Register article:

"I'm not saying that there will be a move in any time that I can see – my crystal ball's broken – but I do think there needs to be expansions in the way people can enter that workflow,"

I think that's a good way to look at this entire email thing, not just as it applies to the Linux Kernel, but in general.

</comment><comment><USER5> >"But e-mail is so much better for discussion and patch review" it's hard to differentiate sometimes between "better because I'm more familiar with it" and "better because it has features I care about".

>Again, there is documentation out there to explain how to contribute but it doesn't actually need to be this complicated.

I'm not sure... email provides a nicer patch review system in many ways than any web-based patch review system. If it doesn't need to be this complicated, why haven't those other systems caught up? It's not clear to me... and at least for now, those features aren't replicable without email.

</comment><comment><USER6> The bigger problem is how many ISPs handle email. First, they block outgoing port 25, so you can't actually SEND email.

Then they forget that some of their customers need to actually send email from their computers and out to the internet, as opposed from using some third party service. Or they make it available only on "professional" over priced subscriptions.

Back when I started hosting my own email, o my ADSL, I called my ISP and just told them, "I setup postfix, I can recieve mail, but I can't send it out?" They told me the outgoing port was blocked, but that I was free to use their email gateway, they gave me the hostname, and all was good.

When I switched to fiber, I called my ISP and asked them what their email gateway was, they gave me the hostname, and all was well in the world.

But last time I switched ISP, I couldn't get the hostname of their email gateway, support kept giving me some URL for their webmail, and I couldn't explain to them that I didn't want to use their email service, I had my own, and I wanted to send mail out onto the internet thankyouplease. They then told me, that if I used my own, I should call the company that hosted it for me.. I explained to them that there is not company, just my computer. They told me it was not possible to send mail directly from a computer because outgoing port 25 was blocked.. I explained to them, that I knew! That the very fact that I was having this conversation was because they blocked port 25 and needed to provide me with the hostname of their email gateway/relay server. No success.

I did some grey area research, and found their stupid relay server, but it rejected relaying me mail with a nonsensical error. I called support again and explained the error, nobody knew what that machine was, but that their webmail was located at...

Fast forward, I befriended a technician at the ISP and he told me the name of a netops guy, I found him on linkedin, and explained the error.. He told me their relay host would only relay mails for IPs that reverse-dns resolved to the FROM domain.. Fair enough I guess..

Called customer support, asked for reverse-dns, I couldn't convince them that such a thing exited and they kept telling me I needed to contact a DNS provider and pay for the domain.. I told them that I had the domain, and DNS configured, but that that company couldn't possibly assign reverse dns to my IP at this ISP.

Back to netops guy, I owe him some beer, but he setup a reverse dns for me.. And I could send email.

It didn't feel like a triumph, it feels like "The Internet" is deeply fucking broken and I fear for the future, I fear that next time they change infrastructure, or I move to a new house, I'll have to go through this hell again.

I get why people are not happy with git send-email, because, getting the privilege of actually sending a fucking email from your "Computer PC" in 2020 seems next to damn impossible.

<comment><USER7> You need a different ISP.

<comment><USER6> I gosh-darn know that! but you know what? There's no realistic choice. They own the fiber, I'd literally cost millions to get new infrastructure.</comment></comment></comment>


Program for cracking iphone apps released.  Hold onto your hats. - <AUTHOR> http://hackulo.us/forums/index.php?s=4a4a9c10b678d8400dee0d56087f4c20&showtopic=12255 <comment><USER2> developers will be running back to web based apps!</comment>


Boomers Are Not Okay - <AUTHOR> https://www.theatlantic.com/international/archive/2019/11/britain-election-boomers/602680/ <comment><USER2> Does anyone bother to ask why the government has so much control over every day activities? This puts so much power into the hands of politicians, and is so divisive. The abuse of such power to control, for example, housing, becomes irresistible. The temptation to think that these problems can somehow be made better by adding more government gets stronger and stronger. Each failure leads to more calls for more government.

</comment><comment><USER3> The irony is that most of the youngsters so anxious to snatch power away from the old will one day _become_ old, and learn the hard way just _why_ the old act as they do.</comment>


California says the iPhone costs $599 - <AUTHOR> http://clipperhouse.com/blog/post/California-says-the-iPhone-costs-599.aspx

<comment><USER2> This sounds like double taxation. The "subsidy" is something you pay for every month on your bill, which you also pay taxes on. So they get you for their imaginary cost of the phone, then they get the actual cost (minus what you paid upfront) as part of the taxes on your monthly bill.

I am all for paying my fair share of taxes, but when two groups in the same organization can't communicate and it costs me money, that upsets me.

<comment><USER3> They do communicate, it's only CA law that sales tax on phones are for the unsubsidized price; it's not like either party is unaware of this.

You also don't ostensibly pay a 'subsidy', they're 'giving' you the $400 in exchange for a 2 year service contract, not explicitly baking the subsidy into the price (e.g. after your contract is up, you do not start paying less just because you've 'paid off' the phone). That's also not the imaginary cost of the phone; as someone who's lost an iPhone, there's nothing imaginary about that $400 :)

<comment><USER4> What about the taxes I'll pay for the 2 years of service? IIRC, there are quite a lot of taxes built into my phone bill.

</comment></comment></comment><comment><USER5> I've been wondering about this, and I guess this is a good a thread to ask as any:

Why _does_ the iPhone cost $599? The iPod touch, with similar components, costs $199. Are the phone chips that expensive, or are there licensing fees, additional regulatory requirements, etc?

<comment><USER6> Simple: Because Apple can get people to pay $599 for the iPhone.

More specifically, they can get people to sign up for $XX/month plans, which means Apple can get AT&T to pay them $399 for the hardware. There's no such deal to be made for the touch, thus it's $199.

As for the components, I'd be surprised if an iPhone off of the line in China would cost much more than $50.

<comment><USER7> The components in a 16GB 3GS are estimated to cost $178.96: [http://blogs.barrons.com/techtraderdaily/2009/06/24/apple- ip...](http://blogs.barrons.com/techtraderdaily/2009/06/24/apple-iphone-3gs- materials-cost-similar-to-last-version/)

<comment><USER8> Wasn't the old rule of thumb that you price manufactured goods at 3x the production cost?

<comment><USER9> I've seen 5x used in pro audio from BOM to retail.

</comment></comment></comment></comment></comment><comment><USER10> _Beware California's hidden cell phone tax_

[http://www.sfgate.com/cgi- bin/article.cgi?file=/chronicle/ar...](http://www.sfgate.com/cgi- bin/article.cgi?file=/chronicle/archive/2005/05/06/BUG5NCKUCQ1.DTL&type=business)

</comment><comment><USER11> I'm guessing they do this in California on ALL phones that are subsidized right? This isn't just an iPhone thing. Any Nokia or Motorola should have the same thing happening to it. Unless it is an 'Apple tax' in which case that's just wrong.

While the State spends plenty of money, they also need to take it in. Last I checked the State was nearly bankrupt and needed to do whatever it could to raise money. Seems they are doing it.

</comment><comment><USER12> Well, in Italy the iphone _costs 600 €_ (but you can put any kind of SIM inside, so it's not carrier blocked).

</comment><comment><USER13> >An effective 25% tax on the iPhone is a great way to ensure that iPhones are only purchased by people of means. So egalitarian!

Oh come off it; taxing baby formula at a higher rate than other goods might suck for people who aren't of means, but taxing luxury goods like iphones?

<comment><USER14> Sales taxes on anything -- luxury or not -- are regressive taxes on the poor, because the poor spend a higher portion of their income on consumption than the non-poor do.

For example, let's say we have a uniform sales tax of 5%. A poor person with an income of $20k will spend almost all of that $20k during the year, paying 5% of her salary in taxes. (She might even borrow money and spend more than her income, meaning relative to her income the rate increases to more than 5%.)

Say for the sake of argument unpoor me makes $40k and I spend $30k, saving the remaining $10k. I pay $1.5k in taxes, more in absolute terms but less as a percentage of income (3.75%), which is the definition of a regressive tax.

There are other ways sales taxes tend to favor the unpoor. For example, a poor person will typically buy almost all goods locally and thus be subject to tax on all of them. This is not necessarily true of non-poor people -- more than half of my monthly purchases are tax-exempt because of where I make the purchase. (For example, when I buy software from American companies, neither Japan nor my locality nor most US states tax me.)

There are tweaks you can make to sales taxes which make them marginally "fairer" to the poor: exempting food and clothing, for example, which the poor tend to spend more on as a percentage of income than the rich. However, these tweaks get very complicated very fast (a lot of governments actually have a policy which sounds like "Exempting food sales but taxing prepared food sold for immediate consumption unless it is take-out except taxing hot take-out." I wish I was joking. My sympathies in advance to anyone who writes POS software for French bistros.) These exemptions also tend to cost the state a lot of money, because non-poor people spend lots of money on food, clothing, etc.

Anyhow, long story short: sales taxes are, and must always be, a regressive tax on the poor.

<comment><USER15> _a lot of governments actually have a policy which sounds like "Exempting food sales but taxing prepared food sold for immediate consumption unless it is take-out except taxing hot take-out."_

This sort of thing is absolutely true here in SF. For example, buying a sandwich at Subway doesn't usually incur a sales tax. But answer "yes" to "Would you like it toasted?" and suddenly your $5 footlong is now ~$5.50 courtesy the State of California. See [http://thomashawk.com/2008/06/cheap- bastard-says-dont-order-...](http://thomashawk.com/2008/06/cheap-bastard-says- dont-order-your-bread-toasted-at-subway-and-always-order-your-coffee-to- go.html)

<comment><USER14> Thank you for correcting my mistaken impression that there was a silver lining to any Californian tax policy.

<http://www.boe.ca.gov/pdf/reg1603.pdf>

 _"Hot prepared food products" means those products, items, or components which have been prepared for sale in a heated condition and which are sold at any temperature which is higher than the air temperature of the room or place where they are sold. The mere heating of a food product constitutes preparation of a hot prepared food product, e.g., grilling a sandwich, dipping a sandwich bun in hot gravy, using infra-red lights, steam tables, etc. If the sale is intended to be of a hot food product, such sale is of a hot food product regardless of cooling which incidentally occurs. For example, the sale of a toasted sandwich intended to be in a heated condition when sold, such as a fried ham sandwich on toast, is a sale of a hot prepared food product even though it may have cooled due to delay. On the other hand, the sale of a toasted sandwich which is not intended to be in a heated condition when sold, such as a cold tuna sandwich on toast, is not a sale of a hot prepared food product. When a single price has been established for a combination of hot and cold food items, such as a meal or dinner which includes cold components or side items, tax applies to the entire established price regardless of itemization on the sales check. The inclusion of any hot food product in an otherwise cold combination of food products sold for a single established price, results in the tax applying to the entire established price, e.g., hot coffee served with a meal consisting of cold food products, when the coffee is included in the established price of the meal._

Good golly, I am so glad I don't have to program anything like that in my shopping cart...

</comment></comment></comment></comment><comment><USER16> Massachusetts does the exact same thing.

<comment><USER17> They don't call it Taxachusetts for nothing, hmm?

</comment></comment><comment><USER18> If the providers advertised this fact more, they could pocket a little bit more profit by selling the phone with a payment plan. This would reduce the service part of the monthly bill and so reduce the utility taxes for those who live in a city run by thieves.

</comment><comment><USER19> Sounds as if the problem is different taxes for physical devices and for mobile operator subscriptions (or whatever the categories are). If one is 25% and the other is 10%, of course the iPhone will eventually cost nothing.

</comment><comment><USER20> I thought the iPhone was already supposed to be purchased by people of means.

</comment><comment><USER21> Buy it out of state

</comment><comment><USER22> So California is close to being the first failed state despite high taxes on luxury items.

Let me guess, CA has low taxes on property, so they have to tax everything else?

<comment><USER23> Bingo. Prop 13: [http://en.wikipedia.org/wiki/California_Proposition_13_%2819...](http://en.wikipedia.org/wiki/California_Proposition_13_%281978%29)

<comment><USER24> The alternative to Prop 13 is that people who lived their whole lives in CA can't afford the taxes to retire there.

<comment><USER23> This is an interesting line of thought, but you'd be better off if you followed it to its conclusion.

Assuming the same level of property taxes, others must pay more, making the state unattractive long-term. Does this mean overall tax revenue declines eventually?

This statement is true for everywhere, not just CA. Why should it be different here?

</comment></comment></comment></comment><comment><USER25> That's just not right...</comment>


New Google Sheets: faster, more powerful, and works offline - <AUTHOR> http://googledrive.blogspot.com/2013/12/newsheets.html?m=1 <comment><USER2> I'm at my first company that uses Google apps and it's been a bad experience. There's so much about email and calendaring that Outlook/Exchange got right that it's hard to be without it after taking it for granted.

Using a native rich application is always going to be superior to building a web app on top of a browser. Once you're used to real applications, Gmail and the other apps aren't suitable for anything more than light usage. It's not just the features that are missing, it's UI responsiveness and usability. Hosting an application inside a browser is so awkward in ways that real applications aren't. I can't assume I can right click and get anything useful, I don't know if I'm going to get the browser's menu or the app's. The concept of a consistent menu bar you can access with hotkeys is gone. Online/offline will never be seamless and consistent across apps. And the input lag is intolerable.

Having all of my documents stored centrally is a real, but small, convenience to get in exchange for everything that's given up. And as far as cost goes, I'd prefer that any money my company might be saving be deducted from my paycheck if it would mean they'd get off of Google apps.

<comment><USER3> I recently went through an acquisition where we transitioned from Google Apps to the Microsoft suite. I do not share your love of Microsoft's suite.

Among the many problems I have with the Microsoft suite, Outlook is at the top of my list for generating the most frustration. GMail's priority inbox and new-style inbox where machine learning is used to sort out mail is a productivity booster for me. With Outlook, I regularly lose important mail because it is buried under the difficult to filter masses of other email.

I could go on about how the lack of robust collaboration facilities are a direct time waster for my team, but I don't want to hijack this thread further...

<comment><USER4> So, we all like what we're used to.

To the OP, insisting that apps running in browsers will never match native apps in terms of UX, that's a very audacious claim.

There are many powerful, competent, and well-funded entities with a vested interest in improving the web app experience (including Google). I wouldn't claim they're doomed from the start. This could be just another example of a disruptive technology, that's initially lacking in certain conventional metrics, but has a lot of room for improvement above and beyond the entrenched competition.

<comment><USER2> > There are many powerful, competent, and well-funded entities with a vested > interest in improving the web app experience (including Google). I wouldn't > claim they're doomed from the start.

I've been using gmail for almost 10 years. I liked it from the start. But it's getting worse, not better. It's extremely slow compared to what I'm used to with Exchange and Outlook, and navigating around is more of a chore. How do I, for example, see who's in on an email list? I can't just right-click on the name of the list and see the members? (And don't even get me started on the new compose experience mess.)

If Gmail was being continuously improved, I'd have a reason to be optimistic about it. I like being given free storage, but as far as usability goes, I have fonder memories of Eudora.

<comment><USER5> Gmail UI sucks in part because they are going for the masses, not the power user. It isn't HTML5's fault.

<comment><USER6> A lot of it is due to the limitations of HTML. For example, HTML is why Gmail paginates about as well as PHP app from 1998, instead of allowing you to just scroll through all of them like a native client.

<comment><USER7> Pagination does have it's advantages, namely: \- Linking \- Easier to grok where you are in the result set ( 3 out of 5 instead of the scroll bar that changes height)

<comment><USER8> Yeah, it works great in search results, much easier to understand for the average user...

Page 1: 1-20 of about 26... cool not too many to scan through

Page 2: 21-40 of about 46... oh

Page 3: 41-60 of about 67... errr

Page 4: 61-80 of about 87... seriously?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Am I the only one that is distracted by the name "Google Sheets?" It doesn't exactly roll of the tongue, awkward to say and doesn't exactly scream "spreadsheets" when placed next to other Google Docs (Drive?) products. It can just as easily have been a presentation tool, or something else entirely. Although, it's probably ambiguous only to me and for most other people, sheets == spreadsheets.

<comment><USER10> I propose _Gcell_ for slang. It's quicker, analogous to _Gmail_ , and vaguely reminiscent of _Excel_.

<comment><USER11> IIRC they're trying to avoid GStuff-type names.

</comment></comment></comment><comment><USER12> Can we insert rows normally now? In a discoverable, intuitive way, like Edit -> Insert rows used in every other spreadsheet ever?

Currently the solution is this: [https://support.google.com/drive/answer/44684?hl=en](https://support.google.com/drive/answer/44684?hl=en)

Eg, to add 30 rows, select 30 random rows, no matter what they are, as long as your selection is 30 high. Then you right click the row area, you get the option to insert 30 rows.

Who does UX for these products? Surely this didn't test well?

<comment><USER13> The one thing that really annoys me is that they don't have a keyboard shortcut for adding a new row. Now I always have to

1) Shift space to select the current row

2) Press the "right-click" button the keyboard

3) Press the down arrow 4 times to select "Insert 1 above"

4) Press enter

Or else I've to use the mouse, which is equally slow. It's really silly given that how often people insert rows.

<comment><USER14> Insert row is: 1) Shift + space (highlight current row) 2) alt + I (open insert menu) 3) r (insert row above)

vs Excel which is: 1) Shift + space (highlight current row) 2) ctrl + shift + "+" (insert row above)

Slightly different key pattern, but it does exist. Difference probably exist b/c ctrl + "+" is reserved in the browser for zoom.

<comment><USER13> Thanks for the tip! That's faster than what I do. I still wish they add a dedicated shortcut for it though so that I can do it with one keystroke (like the Ctrl + Shift + "+" in Excel).

</comment></comment></comment></comment><comment><USER15> "works offline" ... in Chrome only!

<comment><USER16> It's been years and still Google only implements offline mode in docs for Chrome? This looks shameful, but perhaps there is some reason that Google people reading HN can explain?

From what I can tell this requires a Chrome app from the Chrome Web Store. So it is not standard HTML5 stuff. Does Google intend to fully support non-Chrome browsers? This behavior seems to show otherwise.

<comment><USER17> While it is hard to say what Google expects to do or not to do, it does seem like Google are building an app platform on Chrome in parallel to the so called web app platform (HTML5 + Javascript).

<comment><USER18> Google originally pioneered Gears as a way to get webapps to work offline (at a time when HTML5 was still being hashed out by WHATWG) and tried to get it adopted as an open standard ([http://gearsblog.blogspot.co.uk/2008/04/gears- and-standards....](http://gearsblog.blogspot.co.uk/2008/04/gears-and- standards.html)).

Spreadsheets had (view-only) offline capability via Gears as far back as 2008 (see [http://googledocs.blogspot.co.uk/2008/04/view-your- presentat...](http://googledocs.blogspot.co.uk/2008/04/view-your- presentations-and.html)) but this was then discontinued in favour of the standards methods. FWIW, they have been helping with the HTML5 storage APIs from the beginning.

The HTML5 way of doing offline is AppCache, which Google have used for other products ([http://googlecode.blogspot.co.uk/2009/04/gmail-for-mobile- ht...](http://googlecode.blogspot.co.uk/2009/04/gmail-for-mobile-html5-series- using.html)) and are presumably using here (or the alternative FileSystem API - [http://dev.w3.org/2009/dap/file- system/pub/FileSystem/](http://dev.w3.org/2009/dap/file- system/pub/FileSystem/)).

I suspect the Chrome-only limitation is due to the differences in the way is currently implemented, for instance:

* Until Firefox 26's release yesterday, it would prompt for each site that wanted to use AppCache ([https://news.ycombinator.com/item?id=6881368](https://news.ycombinator.com/item?id=6881368)).

* Firefox doesn't handle the no-store directive well

* Chrome Apps can be granted unlimited storage ([https://developers.google.com/chrome/whitepapers/storage#unl...](https://developers.google.com/chrome/whitepapers/storage#unlimited))

<comment><USER16> If it worked in Chrome outside of the store, it would be more plausible. But requiring the Chrome Store seems to indicate it is not using just standard HTML5 stuff like appCache. The issue of limited storage or not seems insufficient to explain this.

Very disappointing.

</comment></comment></comment></comment></comment><comment><USER19> Fed up of all the Google Docs fanfare...

Excel features...

fast - check. Powerful - check. Works offline - check.

Let's get a little closer to google docs...

Works online - check. Edit in browser - check. Edit on mobile device - check. Share with other people - check. Cheap - check (o365 sub is really cheap per seat). Can customise the UI - check. Can deal with huge sheets - check. Can extend, script etc - check.

Google docs buys me nothing.

<comment><USER20> I use MS Office occasionally at work but even that small amount of usage has me wanting to use Google Docs instead. -Someone has the Excel file open on the network? Oh, read-only for you my friend. Have to save? Better track down whoever has it open. -No revision/change tracking. Have to always be alert as to who is changing what and when. Often simpler just to make a new file and add to the clutter on the network folder.

<comment><USER19> You're doing it wrong.

sharepoint/svn avoids these issues.

<comment><USER21> Isn't that just another point in his favor? It's easy to say "you're doing it wrong, just learn how to use these other technologies so Office works correctly", but most users would obviously prefer a product where "doing it right" is the default behavior. I'm speaking of course only with respect to the feature being discussed here (collaborative editing); I don't have much of an opinion on Office vs Drive overall.

<comment><USER20> Exactly, not everyone using these files are coders or computer savvy enough to tolerate SVN or GIT.

<comment><USER19> We have many non technical users doing just fine with TortoiseSVN on windows...

If it's a command line app they'd be lost so that might be the basis of your argument.

<comment><USER22> So you have users editing Office documents and committing changes to SVN and you don't get conflicts? Or if you do, they are able to resolve them?

<comment><USER19> Yes you do get and can resolve the conflicts.

Despite common knowledge you can diff and merge office documents with TortoiseSVN. All it does is fire up their built in review/diff tools.

<comment><USER23> For normal office workers, this contraption really works better than collaboration (and change tracking if you need it) via Google Docs? Wow.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> Conditional Formatting is a huge win.

The lack of this feature kept me using Excel when my collaborators complained about stale status colors.

I'll have to give it a test drive again soon.

<comment><USER25> I've been using conditional formatting for over a year. It was pretty buried in the options though.

</comment></comment><comment><USER26> Good to see filtering is finally a client-only action. It always struck me as strange that what was effectively a view change (on the order of scrolling through the document or changing the active page) propagated to other collaborators.

</comment><comment><USER27> Big fan of gdocs here. Some of the new functions are going to really be great. My only complaint is the display changes. The default row size has increased to 21 from 17 and size 10 font no longer fits in a 17 pixel row. The best option now is size 9 font on 19 pixel rows. It may seem nitpicky, but when I design a spreadsheet, I use a lot of screenspace and this really adds up.

</comment><comment><USER28> I'm skeptical of the claim that it's more powerful. Running a simple performance test, 10,000 formulas of the form: B1=MOD(A1+32,1000) re- evaluation takes about a second, which is slightly slower than the old version. For reference, Excel can do 1,000,000 of these formulas, significantly faster.

</comment><comment><USER29> As an ex-excel power user, this is a huge step in the right direction. F4/F2 now seem to work. Unfortunately there is no way to turn of editing directly in cells. There are strange bugs like auto column sizing doesn't work correctly. Merging cells is a cancer, it would be nice if the drop down offered centering across selection.

While this is still not Excel for windows, it feels better than Excel on the Mac. I think I will start using it.

</comment><comment><USER30> Spreadsheets have pretty much been the same for the past 10 years so it's good to finally see some movement in this area. For a time being, I was sure that Google gave up on spreadsheets.

</comment><comment><USER31> I am curious: are documents in Google Sheet scanned by Google's software bots to determine stuff about me? I can't seem to find a Privacy Policy document specific to documents in Google docs. How about if I pay for the service (can I pay for the service)?

</comment><comment><USER32> I'll be excited if:

\- I can explicitly name and lock a given version (i.e. a checkpoint). This is a _huge_ missing feature at my company, where we rely on collaboratively- edited spreadsheets

\- I can select non-contiguous cells

\- I can insert multiple rows easily

\- I can copy formulas into Excel

</comment><comment><USER33> I've used ms office and google apps for years. For lightweight day to day use, google, hands down. Nearly every document I create is shared, and MS as of a few years back doesn't compare. I haven't tried the new office.

For serious spreadsheet work with layout requirements, Numbers, easy. Yes, Numbers. For super-serious something or other I hear Excel is unbeatable, but I don't know what functions Excel has that google doesn't, let alone Numbers, and Numbers has the one feature _every_ spreadsheet should have and almost none do (certainly not excel/google): allow two sheets on a single page. How often do you have to juggle column widths/cell merges to get different layouts in two parts of your worksheet? No more! With Numbers you can draw out multiple separate sheets, each with their own column widths/row heights and other formatting, no problem.

And for large data sets, or data that requires extensive filtering or specialized presentation, FileMaker, no question. It blows all spreadsheets away when it comes to: hundreds of thousands of rows (or millions), and it supports limitless separate views of the same data. Anyone who does serious work in excel that includes large data, normalize-able data, or extensive presentation or filtering, you owe it to yourself to check out FileMaker.

</comment><comment><USER34> Can they finally let me select groups of cells that are not adjacent to each other for charts?

</comment><comment><USER35> I really appreciate the performance boost. We have a quite complicated sheet before and adding 20 more rows at a time is annoying. Yes I know there are ways to add 20+ but the default low limit shows how slow it is. With this new system, Google is confident enough to allow user to add 1000 rows at a time (default value). Scrolling seems to be very smooth too. Overall a great upgrade!

</comment><comment><USER36> Do feeds still work like they used to via the same APIs? I'm not able to get a json feed out via a link like before for some reason.

<comment><USER37> They don't :(. Stick with the previous format if you need API support.

[https://support.google.com/drive/answer/3543688](https://support.google.com/drive/answer/3543688)

<comment><USER38> Thanks for this, super helpful. Let's hope they add things back in like Apple.

</comment></comment></comment><comment><USER39> Personally I'm more interested in projects like Webodf ([http://webodf.org/](http://webodf.org/)) and it's integration with OwnCloud 6 ([http://owncloud.org/](http://owncloud.org/)). Stick it on a Synology NAS at home and I've got my own office suite in the cloud.

</comment><comment><USER40> Can you select multiple, discontiguous cells or columns or rows yet?? That's the thing that kills me that is not implemented.

<comment><USER41> No, it is still not there. First thing I tried. :-(

</comment></comment><comment><USER42> Offline is awesome; obviously because it means it works anywhere, but also I presume this means that all formula evaluation is now done locally, i.e. "instantly". I am pretty sure that before the server was involved in (some?) recalculation, which caused sluggishness.

<comment><USER43> I still find it bizarre that the actual files still aren't synced in the google drive desktop app. Instead they are synced and stored in the browser. I'm assuming this means you have to go into the browser and get the latest versions before you go offline, rather than the desktop app keeping you in sync. The desktop app really feels neglected, like it's a checkbox feature to compete with Dropbox.

<comment><USER44> > I still find it bizarre that the actual files still aren't synced in the > google drive desktop app.

I suspect one of the reasons for that is that the native storage _isn 't_ a file format at all, and that all of a users sheets (and other files for the Google apps) are stored in a set of entries in an online database.

> The desktop app really feels neglected, like it's a checkbox feature to > compete with Dropbox.

The ability to store traditional files in Drive and access them through the same web UI is a feature that was added, I suspect, to make the Drive interface usable as a one-stop browser-based information access point (a "My documents" for Chromebooks, in a sense), and the desktop app is a feature that provides syncing to encourage people to store desktop files in a way which also makes them readily accessible to that interface, as well as a _me too_ feature to compete with Dropbox.

<comment><USER43> > I suspect one of the reasons for that is that the native storage isn't a > file format at all, and that all of a users sheets (and other files for the > Google apps) are stored in a set of entries in an online database.

If the DB entries can be duplicated to the users browser, then they could be serialized to a file in the users google drive. This would allow people to back up their files, move files out of google drive when it gets full and move them back in when they need them. That guy that lost all his files a few months ago would have been ok. I can't see a good reason the .gsheet files are just bookmarks. I want my files.

Also, if somebody from Google is reading this, please add a reconnect option to Google drive. Exiting and re-running drive is a pain after every network failure, hibernation, etc.

</comment></comment></comment></comment><comment><USER45> I'm also seeing a nice change to using custom formulas/scripts.

Normally when I return a 2D array, most of the grid is results from the CONTINUE function - now it writes the actual cell value calculated.

This is a lot nicer for then sorting this data.

<comment><USER32> Good spot - this is much better. I have to copy & paste values from CONTINUE cells now otherwise sorting is completely broken.

</comment></comment><comment> dav-id Recently I have been working on a project with a client where we have been using SkyDrive and its online Excel for simple and basic collaboration on a few documents.

The thing that I love about this setup is having the original Excel document sat there on the skydrive ready to be edited in the full Excel when more advanced editing is required and seamlessly updated on the web (although not at the same time, which is something I hope will be possible in the future).

</comment><comment><USER46> I have tried multiple times to use Outlook and Exchange based email, most recently a couple months ago. I do not like it. At all. If I was offered a job that forced me to use Outlook, I'd probably turn it down (or bribe IT to make my email accessible through Gmail).

For all of it's flaws, I frikkin' love Gmail. Perhaps my favorite parts are the spam filtering and the filters.

</comment><comment><USER47> Some really nice stuff however.... Still no zooming.

<comment><USER23> Maybe I'm misunderstanding... does <ctrl>-<plus> not work for you?

<comment><USER47> That zoom's all the Buttons aswell.

</comment></comment></comment><comment><USER48> I don't use Google docs/sheets/gmail/... due to their terms of service. Why give Google a perpetual right to do anything they want with any content put in a Google app? [https://www.google.com/google- d-s/terms.html](https://www.google.com/google-d-s/terms.html)

</comment><comment><USER49> It's still proprietary software. Why would I use this instead of Libreoffice?

<comment><USER43> It is convenient. But I am surprised so many people are willing to put their business's data into a spreadsheet where they can't even get the native files. If this takes off it's going to be lock in 100x worse than Excel ever was.

<comment><USER50> Why? If you can get your data out as CSV? How are you locked in at all, or at least, any more than with Microsoft?

p.s. According to a sheet I have saved I can download my info as: _.xlsx_.ods (OpenDocument Format) _.pdf_.csv _.txt_.html

<comment><USER43> When documents are converted formats features, formatting etc will be lost. If you export everything as CSV you loose all your formulas etc. xlsx and ods are better, but not perfect.

If you could export all your documents in the native format and import them into LibreOffice you'd still lose features, but as LibreOffice improved it's import you'd lose less.

With convert at export data is permanently lost. With convert at import, no data lost permanently lost, it just may not be currently available.

Also if you could backup in native format you could import into a google account if your first account is blocked/lost, instead you have to go through the import/export conversion twice.

Also, with Excel, once you have a computer running Windows / Excel, you can't lose data if a feature is changed / dropped. Just don't upgrade. With Google Docs, you have no choice to upgrade to the latest version. It may not even be a dropped feature, you spreadsheets may accidentally rely on a buggy feature, and when it's fixed your spreadsheets behave differently with no warning.

</comment></comment></comment></comment><comment><USER51> Google Spreadsheets is VB/DBase/FoxPro for the web and like them, you can build a nice-sized product or company and upgrade to a "real" database for the tables you need, e.g. enterprise search on SOLR/Lucene. Specifically, you get super flexible, shareable, cheap cloud database with built-in UI, APIs, version and access control and more. Little or no training required.

My company has over 3,000 sheets (7,500+ worksheets) and over 100 "types" of tables. Compared with companies that used traditional RDBMS+app architectures, we've saved big $ between data entry and engineering. It allowed us to skip VC financing and win our market bootstrapping to profitability.

hope this helps,

adam

world's leading source for specialty/artisan products

bbfdirect.com

get office snacks! bbfdirect.com/office-snacks

</comment><comment><USER52> Been hoping for this for a long time. Happy it's here.

</comment><comment><USER53> and Paste Transpose!

</comment><comment><USER54> I am excited about this to a very unnerving degree. Perhaps I should have been an accountant.

</comment><comment><USER55> I just activated the new sheets, create a new sheet and could't edit it offline :S

</comment><comment><USER56> Real hackers use sc or ethercalc anyway =]

</comment><comment><USER57> So, is this a move against Microsoft?

<comment><USER58> Definitely. Though I often wonder how much Google's apps strategy is a direct- compete with office for now?

I have a sneaking suspicion it's similar to Microsoft's Bing strategy. It feels like Bing was created to annoy Google and keep them focused on search. Microsoft could afford to throw a few billion at something to keep Google out of it's bread-and-butter. It feels like Google's doing the same with apps.

Of course, given enough time to gain feature parity, both GApps and Bing could be true competitors.

</comment></comment><comment><USER59> Why would anyone use Excel now?

<comment><USER60> Maybe because not everyone wants their spreadsheet with sensitive data on Google's servers. Also, I seriously doubt this thing is up to feature parity with Excel.

<comment><USER39> As far as desktop clients go, what does Excel have that Gnumeric or LibreOffice Calc don't? Not including inertia.</comment></comment></comment>


Process is Poison - <AUTHOR> http://blog.gosquadron.com/process-is-poison <comment><USER2> TL;DR — Process bad, automation good.

I agree with half of that.

The problem in the article is that the example team didn't "pop the why stack" enough. "Engineer screws up a deploy. Why? <insert wrong command, lazy practice, knowledge gap, etc here> Ok, let's automate all the things!"

Automation is great—its not an incorrect response to reduce the surface area for what can result in an error. but automation in turn depends on another process. Continuous deployment? Great idea—but it depends on your tests. How do we know your tests are good? Code review! Another great idea—but also its a process.

Process isn't bad. Being a slave to process is bad. So is being a slave to automation. What happens to your continuous deployment when the new guy throws up a server to spike something (creating a snowflake) and it accidentally gets put into rotation for deployment as an app server, which now fails on it?

process is fine. it allows automation. use both intelligently.

<comment><USER3> Also, this article is limited to web-deployed applications - "deployment happens with the latest good build every so often" \- which is the simplest possible deployment scenario. When you're not in the web-based world, your customers decide when and if to upgrade on their own schedules; there are beta test cycles; there are maintenance releases and hotfixes, each with its own branch in version control. Management is involved in deciding whether Release 23.07 should be delayed because big customer X found a bug. If you don't have a process to keep this stuff flowing smoothly, it just doesn't work. Sure, large parts of it can be automated, but the rest relies on lots of big and little decisions made by people.

<comment><USER4> I agree that the author has a webcentric view or experience gained primarily from web development. For most web apps the cost of an individual failure is essentially zero. In that sort of scenario tolerance of bugs is much higher so you can get away with playing fast and loose with process. If you look at industries where the result of a software failure is someone getting killed[1] then you will find lots of process. This process isn't there just for the sake of having process. It saves lives.

1\. [http://en.wikipedia.org/wiki/Therac-25](http://en.wikipedia.org/wiki/Therac-25)

<comment><USER3> You don't even need to go as far as software that can kill people to find examples where bugs can be very expensive. A failure (wrong data, system down, etc.) in any software that a company depends on to operate its business can be very expensive to the company (e.g., a hotel can't take reservations for an extended period of time during a busy week, or a supplier sends a million- dollar piece of equipment to the wrong country). And it can also be very expensive for the software provider if their customer ditches them for a competitor's product.

</comment></comment></comment></comment><comment><USER5> Squadron, you can make a much better case for your product than resorting to such vague and meaningless pablum.

Yes process has overhead, can have bugs, or can be incorrectly or incompletely executed. Yes, it's nice to make it easy and reliable, automation is part of that. No, it's not poison.

 _An error in engineering is costly, people and dogs can die._

Yes, you're right. But if you want to use death as rhetoric, you really should have something against process beyond an explanation that process can be deficient. Go to a company where user death is an actual risk and tell them that that process is poison and you'll get laughed out of the room.

</comment><comment><USER6> My favorite thing is when there is lots of automation, but nobody knows how the hell it works (because it's been around for 3 years chugging along obediently) and nobody's wanted to look at it (because it's an ugly horrible mess of 'just ship' code) and it just happens to be the single automation that controls whether or not critical customer updates get verified before they ship (wait for it) and now we have to ship (of course) and now it's broken (of course) and nobody has a clue how to fix it (of course) because process is kind of annoying.

If your automation works perfectly, you still need process to make sure your automation works perfectly, and fix it when it doesn't.

</comment><comment><USER7> That may work for software people. If you to have a production line running, you have more problems: documentation may be there, but the personnel might be unaware/unable to understand it. Some things might be impossible or very difficult to automate. If you train them, they might forget the next day. I'm still looking for good ways to implement constantly changing manufacturing requirements that need to be understood by real people.

</comment><comment><USER8> The error in saying process is bad, is simply that its also subject to human error.

But process is refined over time. It may have a wrong step, but then you fix that and now it doesn't. That's the point: you write down what you should do so you don't do the wrong thing again.

I'll go further: automation is bad because a human may have made an error in writing the automation code. See what I did there?

</comment><comment><USER9> Process is fine when used intelligently. One of the things it allows you to do is standardize across large teams how things are done. You can also predict what people are going to do if there's a process (ok, bob opened a bug against that other group, I know they have a next-day triage process to look at it so let's sit and wait to see what they say).

</comment><comment><USER10> Automation is a by product of Process. Automation hides (and outsources to a machine) the complexities of certain Process(es). When one decides to automate the Process is a question of debate and usually revolves around some sort of Opportunity costs. In the end Process is Great since it sets boundaries (rules) and leads to Automation.

</comment><comment><USER11> know places where even poison taking follows strict process.</comment>


Show HN: Activation Hacks – Teardowns of popular apps using behavioral economics - <AUTHOR> http://activationhacks.com/ <comment><AUTHOR> Hey folks, founder of Activation Hacks here. I'd love your feedback on the site.

I've spent a bit of time collecting as many behavioural nudges as I could find in the tech/product space. The goal of the site is to highlight these tactics used by some of the best product psychologists in the business to retain mobile users.

It's basically like a product onboarding teardown but from a behavioral economics point of view. Hope you like it :)

</comment><comment><USER2> I think it's gonna be effective one.

</comment><comment><USER3> Nice task keep going.

</comment><comment><USER4> Unique idea i think so.

</comment><comment><USER5> It's a good idea</comment>