Nothing in Android makes sense except in the light of its original vision - <AUTHOR> http://dcurt.is/nothing-makes-sense

<comment><USER2> Disagree

> And RIM's BlackBerry was still the most popular smartphone in the world.

If your world was the USA. Symbian/S60 was the dominant smartphone OS.

> What Miner and Google gambled on, and it seems bizarre in retrospect, was > that the carriers and the manufacturers would be good at customizing and > improving the user experience of the base operating system.

No, the problem was that the available OS's had huge (leave it to the handset vendor) holes (Symbian), or that their competitors had control of the available 'easyish but hard' options (Nokia dominated Symbian). Or that the other options were crap (Windows Mobile), or required S/W engineering experience which was not easily obtained (generic Linux).

The miracle of Android was that though it had some gaps in it's implementation, was good enough, and sponsored by a somewhat benign entity (at the time).

However, the reason for the handset manufacturers trying to differentiate, no matter how incompetently, or not was that the problem that Android solved also holds a curse. That is that the handset manufacturers do not want to repeat the PC experience of comoditizing the hardware market - What has happened before will happen again - unless we try to retard things.

The only way Google can reduce manufacturer freedom is to become truly non- free, on the day that happens, Android will fork.

<comment><USER3> Thanks. I have fixed the error about RIM.

<comment><USER2> No problem, I've also toned down my reply.

<comment><USER4> Yep exactly, and that was why the Symbian Alliance formed. It was to prevent microsoft from doing what they did to the PC world. This is also one of the reasons ARM thrived instead of Intel.

The other lesson that is still being battled is patents, Internet protocol is essentially free. Wireless is not.

The other main difference is carriers, they are the gatekeepers to the valuable, yet resource limited spectrum that mobile phones need and therefore have a much larger control over the value chain than ISPs do for the Wired Internet.

<comment><USER5> NO! The Symbian Alliance Formed because Nokia wanted to control its competitors to such an extent to make them never able to best Nokia. They did that by doing closed versions of Symbian that were never open to the Symbian Alliance.

<comment><USER4> That happened later, Symbian spun out of Psion. The first Symbian based phone was the Ericsson R380. The biggest difference between all the members were that the ones who took control of a UI built up more control. These were effectively Nokia and Docomo, hence why Symbian was used so much in Japan on their "feature phones" and S60 became strong.

UIQ used by many of the other manufacturers was never developed by any of them and was effectively an orphaned UI company.

</comment></comment></comment></comment></comment></comment><comment><USER6> Fun fact: The title is likely an adaptation of the quote "Nothing in biology makes sense except in the light of evolution" by Theodosius Dobzhansky.

</comment><comment><USER7> That actually sounds like a bad idea from the outset. There are exceptions (Apple), but my general observation is that hardware companies are bad at writing software, especially user-facing software. Making a consistent platform by writing a compatibility layer is a rock-solid concept, but expecting hardware vendors to be the ones writing software on top of that layer seems misguided.

On the other hand, while they're not good at making the user-space software, it's something every OEM will think that they want to do. So if the goal is to get widespread adoption, it's a good hook.

To be fair, most companies are bad at writing software, regardless of type, and even software companies aren't always good at writing software. I don't blame hardware companies, it's just not their core competency, and a hardware- engineering mindset is a poor fit for software design.

<comment><USER8> >hardware companies are bad at writing software

Oh god yes. I work for a major hardware manufacturer. We are by far the dominant supplier in our field. We are making a web app that allows our customers to control, operate, and mange our products. It's garbage. Let alone the fact that it's written in Java using seam convos, there was just no thought whatsoever put into UX. For instance, if you press the back button, it takes you to the previous page. So far, so good. However, if you try to perform some (any) action after that, you get a Java stack track and, weirdly, a "your session has timed out" error.

I brought this to our development lead, and his official, written response was, "lots of web apps break if you use the back button. If you use the back button during a ticketmaster checkout, you get an error. This isn't a problem."

Again, our hardware is fantastic and we have well over 50% market share in a massive industry. We just don't have the institutional give-a-shit to go with it on the software side.

<comment><USER9> Yeah. I've seen Cisco software with buttons that do absolutely nothing. Click them all day long. They do nothing. The documentation says they do something, but they do not. Or GUIs that don't allow you to resize the window, despite the fact that a third of the GUI is cut off.

I get a sick enjoyment out of watching our sysadmins flip out about software GUIs designed for the hardware they're running.

</comment></comment></comment><comment><USER10> _What Miner and Google gambled on, and it seems bizarre in retrospect, was that the carriers and the manufacturers would be good at customizing and improving the user experience of the base operating system._

It made sense in context. Miner was the head of the Orange/FT research lab in Cambridge. A lot of creative engineers worked there but they were hamstrung by the junky phone SDKs available at the time. Android would have been just what they needed.

<comment><USER11> Yeah but I got to put stuff on my resume like experience with windows mobile 2002 and Symbian UIQ :)

At Orange we toyed with pushing an Android precursor from Savaje. However, the timing wasn't right - hardware wasn't powerful enough and Orange/FT didn't have the balls or corporate DNA to establish something like the OMA.

At Orange (or probably any carrier) getting a device out the door was a clusterfuck. You had to coordinate between the Device manufacturer (who never had any flexibility in their software schedule), the various operating companies who wanted phones in shop by Nov 1 for the Holiday or else, and various PM's running about trying to get features on the phone to help with their particular mandate (at the time it might have been music, IM, etc).

So yeah, anyone with half a technical clue could see that you could get shit done faster with a common OS. WHat's amazing is that with a little bit of juice from Google and a crack engineering team from Rubin they managed to totally dominate the non IOS smartphone market in a couple of years.

People seem to have this odd view that Android is deficient because it doesn't have some IOS optimizations. But look - if I told you to build something on one set of hardware and make it great that's 10x easier than building an open system. Yeah, closed systems may win in the end (and Apple is winning) but ANdroid couldn't be Android without a wider perspective.

</comment></comment><comment><USER12> When Apple launched the first iPhone it was sold for $500 without contract. Within months Apple had cut the low end model and dropped the price by a third to $400. For the iPhone 3G Apple would jump in bed with AT&T, introduce subsidized models, sales would explode and the rest is history. The Apple and AT&T partnership would lead to the Google Voice fiasco and delayed tethering feature rollout and the (still ongoing) download restrictions and low quality videos over youtube. It would be another 3 years before Apple released another iPhone model priced below $500 (the 8GB iPhone 3GS in fall of 2011).

The obvious point is that the cell phone industry is hard to break into and the most successful players adapt the realities of the marketplace. It's no surprise to anyone that Google changed Android to make it succeed. (Unless you're MG Siegler; I'm still waiting for the blog post on how he hates iOS because Apple sold out).

<comment><USER13> Ah, no. On release, for a few months, the iPhone was _$500 with contract_. Yes, really.

</comment></comment><comment><USER14> This is one of the biggest myths of Android. Apple doesn't have manufacturer skins, therefore they must be utterly and irredeemably evil.

On the other hand, if you actually look at it objectively, manufacturers filled in many genuine gaps and made the early Android OS look much better than the default. Various innovations they introduced have been brought back into core Android and/or stolen by CyanogenMod etc. From a business perspective, a lot of Android's permissiveness towards their hardware and network partners has obviously succeeded beyond most people's expectations.

So the skins have both good points and bad and there are shades of gray but mostly you get the loud opinion of Android geeks (who want the very latest stock as a point of principle) and Apple geeks (who will tear down anything that Apple doesn't have e.g. big screens) usually with the assumption that what they think is important is the only reality.

It's also worth noting that Android is clearly aiming to be more than just a phone or tablet OS, so customisation is probably required to support e.g. car computers.

</comment><comment><USER15> The original vision is a good one and it works.

You need to consider the cost of preventing bad devices and bad UI extensions. The cost is just what you see in iOS: Limited choice of devices. Restrictive censorship rules for users and developers. No checks and balances.

Scolling works well on my Nexus S by the way.

<comment><USER16> _Limited choice of devices._

GOOD.

 _Restrictive censorship rules for users and developers._

If the government isn't doing it, it ain't censorship. Look at what quality filtering through an approval process did for the video game industry. The same force is in effect on iOS, and the quality of iOS apps is consistently pretty high, especially when compared to Android.

Scrolling was total ass on my Epic 4G until I loaded some custom ROM where they did some sort of low-level magic to deliver an "ICS-like" experience on a Gingerbread code base.

It still sucks, though, because unless you have a GNex, to get this UX on Android you have to visit some forum where l33t kids hang out and dink about with your phone, flashing its ROMs and potentially bricking it, and only then can you have something that vaguely suggests an iPhone in smoothness.

With Apple, it comes with a butter-smooth UX right out of the box.

<comment><USER15> _If the government isn't doing it, it ain't censorship_

It is tantamount to censorship once you have chosen iOS, because that choice makes Apple the government of your content.

But whatever you choose to call it, fact is that they restrict content based on value judgements that go well beyond anything you could ever call "quality assurance". They ban everything controversial regardless of quality.

</comment></comment></comment><comment><USER17> The only thing this where this guy is right is the scrolling issue. But he doesnt explain why this is. Android was created initially as a non-touch OS. When they had to support touch they could not totally rewrite how animation was done. This resulted in one thread doing event handling and animation. This is difficult to fix in Android's UI Architecture. And phones hardware often makeup for this fact.

So scrolling is indeed a bit worse than IOS, but its not really painfull anymore. You should give this guy a Galaxy Nexus.

Also the UI extensions on top of android are actually one of its strong points. Differentiation is the key here. And they are not so bad.

The point here is: You do not have to be the best to rule the market! And Google knows that.

However the Galaxy Nexus is the best phone out there, much better than any iphone.

</comment><comment><USER18> I think the reason why Android has become so popular with the manufacturers is because they're free to customise the OS. If Android was just a one interface, one direction platform I don't think any of them would have taken it up.

Mobile phones are still a very competitive market and manufacturers want to differentiate their products to attract customers from another

<comment><USER19> Android became popular with manufacturers because they desperately needed to all gang behind one platform to have any hope against the incredible success of Apple. While quite a few vendors signed onto Android even before the first handsets, they did so at no cost and in name only -- the original Android army were the absolutely miserable G1 and G2 (HTC Dream and Magic), and it stayed that way for some time. At the time I was sure the platform would fail.

As Apple grew, the necessity to commit to Android grew.

Boring parables about why Android made a mistake because it isn't like iOS are as old as both operating systems, during the same time that Android has done gangbusters. My wife has a Captivate Glide with Gingerbread and Samsung's TouchWiz on it. She _loves_ it. She doesn't know or care what ICS is, gets constant updates for the mapping and market and book reading and video viewing, etc. For the average real, non-blogging human being the model works remarkably well.

<comment><USER18> Yep, but if Google just said "Here is our OS, you may put it on your products, but you may not deviate from principles set out by us" none of them would have taken up on it.

Mobile phone hardware is generally the same across most devices these days and most of the "Joe Public" don't care what's on the inside - so the software is where the manufacturers try to differentiate themselves from each other as a selling point

</comment></comment></comment><comment><USER20> I had to scroll back up while reading this to see how old it was. The bug linked to is now closed, and the interview is from last year. Android 4 does use the GPU for more GUI operations and Google has mandated that 3rd parties must not modify the default theme ([http://www.thevarguy.com/2012/01/06/google-imposing-gui- rest...](http://www.thevarguy.com/2012/01/06/google-imposing-gui-restrictions- on-android-4-0-devices/)).

<comment><USER3> Android 4 does use the GPU for some things, however scrolling performance is still nowhere near as good as it is on iOS.

The "unmodified Halo theme" is referring to the icons and interface elements included with the operating system that developers can use when building their apps.

Google even said this: "We have no desire to restrict manufacturers from building their own themed experience across their devices." ([http://android- developers.blogspot.com/2012/01/holo-everywhe...](http://android- developers.blogspot.com/2012/01/holo-everywhere.html))

<comment><USER20> Your article complained about manufacturers implementing custom, poorly designed interface changes which make testing difficult. Google remedied this by telling manufacturers they cannot modify Halo, and so every app developer can use Halo and get the same result on every device.

 _Google even said this: "We have no desire to restrict manufacturers from building their own themed experience across their devices."_

That is talking about a different theme called DeviceDefault. Why would any app developer use DeviceDefault instead of Holo when it would make testing difficult and give an inconsistent look to their app?

</comment></comment></comment><comment><USER21> I suspect the freedom for carriers is at the root of the similar freedom for users to change launcher, change default applications for the home button, dialer, etc. If reducing the former means reducing the latter, I'm against.

</comment><comment><USER22> I wonder... if almost everyone knows and complains about the smoothness in Android being not as good as iOS(consistently, I mean)... Isn't Google aware of this? Or does achieving impeccable smoothness come at a cost(increased memory usage?).. which means that Google are in the crossroads here, trying to balance fluid UX and efficient memory management?

Or is it because Apple and Microsoft have been leaders in software engineering for more than a couple of decades and may have mastered the ins and outs of Operating Systems.. and since it has been only 5-6 years that Google has been working on Android, are they still competitively behind Apple and MS in this regard? and so that we can hope for improvement?

<comment><USER23> There are millions of users out there (including myself), who don't care about smoothness or (in my case) don't even notice any difference between an ios or android scrolling. Also, you have to take into consideration the fact that majority of users had considerably slower feature phone before buying android phone. To them, android is blazingly fast.

</comment></comment><comment><USER4> Symbian was also designed with integration with hardware in mind and providing core API's for manufacturers and carriers to build a UI on top of. This is why the early owners of Symbian were a plethora of manufacturers and operators. Symbian even tried to designate 3 specific UI frameworks (touch, candybar and QWERTY) named Quartz, Pearl and Crystal.. but the shareholders revolted and went their own UI way (hence S60, UIQ & MOAP).

Disclosure: I worked at Symbian between 1999-2003

</comment><comment><USER24> > _The hardest part of building advanced mobile phones, he reasoned, was > writing the lower-level software that the operating system uses to > communicate with the hardware, including the radio baseband and audio/video > controllers_

Wouldn't that hardware- and network-specific code be more easily written by the handset manufacturers and network providers than a third-party software (only) company?

</comment><comment><USER25> The final suggestions makes me think that WindowsPhone is the perfect middle ground between Android and iOS

<comment><USER26> I think the mildly-open nature of Android will be better marketing than Windows Phone - not overboard on openness, but not completely closed.

Hardware manufacturers and Cell providers won't support the extra cost of paying for the OS (in the long run).

This outcome isn't what I would like most, but it seems realistic.

</comment></comment><comment><USER27> huh, i think i just gave him kudos; what the hell was that?

</comment><comment><USER28> Its a shame they didn't at least establish some rules on how manufacturers could modify the interface.

<comment><USER18> If they did this none of the manufacturers would have taken on the platform though. Why should Google dictate to them what they put in their own products?

If Google wanted to standardise Android they should have never released it as an OS for all and produced the phones themselves.

</comment></comment><comment><USER29> I can't possibly imagine how any phone could be smoother than the Galaxy Nexus. Yes, it's taken a long time to get it in 4.0 and it's available to almost no one, but it is finally fixed in my opinion.

<comment><USER30> I agree that the scrolling is pretty smooth. It's not quite as smooth as I think it could be but it's far beyond acceptable. I think when people say that scrolling doesn't "feel right" on a Galaxy Nexus is because of the distance you have to physically move your finger before it responds and actually starts scrolling. I think this is deliberate to prevent people from accidentally scrolling, but nevertheless, I think this is what people are seeing.</comment></comment>


An ARM killer from IIT-M? - <AUTHOR> https://factordaily.com/india-chip-design-shakti-iit-madras/ <comment><USER2> To be honest though building a processor these days is not exactly difficult. That is especially true if you start with someone else's ISA and they have already created a GCC or LLVM back end for it. I was at Sun during the development of SPARC and as part of the Systems group we got to see a lot of the trade offs up front but these days transistors are not nearly so scarce. If you stick to 30 - 50Mhz for your first round you can simulate pretty much power on to shell prompt in a reasonable amount of time. Then there are the process specific issues that TSMC or Global Foundries or whomever will help you with translating your HDL into their most reliable node (probably 45nm or 90nm at the moment), then you'll build a test chip and it will likely do everything you want it to do and it will cost 10x what an equally powerful ARM chip will do, so you will really really want to use your chip instead of that one if you're going to design it into something. And that something has to be popular enough that you sell at least a million of them, otherwise you're going to eat a lot of Nonrecurring engineering (NRE) cost.

It is certainly possible, but it is a long game and you have to survive the early years. Go back and read the history of ARM (and Acorn), Intel (and IBM), Motorola (and Sun and Apple), and Power PC (and Cisco). Then read the history of the Z8000, the NS32032, the AMD88000, and the TI 9900. When you look at the history from where we sit today you will see that building a new CPU is the easiest thing in the world, staying alive until it is relevant is exceptionally difficult and requires quite a bit of luck in addition to good design.

I wish these guys a lot of luck, I would love to see a fully open architecture be even half as successful as ARM has been. They have to walk into this with their eyes open though, it is not going to be easy.

<comment><USER3> That is simply not true.

Building a CPU can be "easy" if you want to build something that works. If you want to build something that is power efficient and, at the same time, quite performant, then the complexity of the problem escalates very quickly.

Sticking at 30-50 MHz? What is this even supposed to mean? Digital hardware design hardly takes clock speeds into consideration, except during physical implementation in the later stages of the hardware development.

TSMC or Global Foundries will help translating HDL into a reliable node? Do you even know what you are talking about? This "translation" that you refer to is called synthesis and physical implementation and it is done by the design house. The foundry only provided the logic cells their technology and they manufacture the final die that is going to ship on the product.

The CPUs you mentioned were simple micro-controllers, they were not designed for heavy processing tasks, they don't even have a branch predictor which is something fundamental to have some significant performance.

Nothing about your post made any shred of sense in terms of hardware design.

<comment><USER4> I'm not sure why pedroaraujo is being downvoted other than in response to his criticism of HN topcommenter Chuck McManis. Pedro is correct; toy CPUs , like what Chuck mentioned building, are so trivial that undergraduate students can build functioning models of them in a few days or hours. They are quite literally thousands of times less complex than the CPUs (even RISC arches) that are discussed in the article.

I also concur with Pedro on the clock speed part - clock speed has absolutely nothing to do with your hardware design until you have written all the HDL, simulated its behavioral characteristics, actually synthesized the logic, completed the analog and I/O components of the design, and are actually preparing for tapeout. There's a reason only AMD and Intel make large CPUs for the consumer market, and it's not because college students are too busy.

I'm going to fade into the grey background for this, but ChuckMcM's comment is yet another disappointing step toward the total calcification of this forum. It's not a commentary on the article; it simply states, lazily, and ignorantly, that whatever it is they're attempting at IIT-M, it can't be too hard. What an an incredibly condescending and blasé thing to say, especially on a public forum where what you say can't be erased.

I'm actually quite glad to see another implementation of RISC-V from outside the US. The horde of nearly identical ARM cores on the market is terribly uninspiring.

<comment><USER5> It seems both of you haven't read the article itself. The new CPU design is not about high-end CPU you expect from Intel or AMD. It is about CPUs for the IoT. We are talking about Cortex-M alike CPUs you find in micro-controllers from Infineon, NXP, Renesas, and alike. BTW there is competition to the ARM design. It is the micro-controllers from NXP former Freescale, which have their own CPU design heavily used in automotive.

<comment><USER3> The comment applies to both high-end CPUs and to microcontrollers as well. Power and performance are even more critical on a microcontroller than on an high-end CPU.

<comment><USER6> And yet you yourself said:

> The CPUs you mentioned were simple micro-controllers, they were not designed > for heavy processing tasks, they don't even have a branch predictor which is > something fundamental to have some significant performance.

So it seems his comparison was fair, after all? Given that the article is about microcontrollers too.

</comment></comment></comment></comment></comment></comment><comment><USER7> It's definitely to be welcomed, but India barely has the kind of interests, state-apparatus or companies that'd want something like this to succeed. India neither has Baidu, nor Tencent, nor Wechat. They have Flipkart, which is barely an Alibaba, and is on a long drawn collision course towards merging with Amazon. The startups I've seen generally seem to target foreign markets, or to service people who service foreign markets; this is inherently a tiny subset of India's population.

Considering the 'prestige' and money that comes with working in the US, I'd be very surprised if the country can ever accumulate enough talent to do anything fundamentally significant (esp. since all of the relevant Education/Industry is entirely Anglophone).

I also feel there is generally a lot of self-flattering that goes on, often for this very reason. I'm old enough to remember the embarrassment that was to be 'India's answer to OLPC' (also conceived at an IIT of note).

<comment><USER8> Why do Baidu and Tencent count, but Infosys and TCS not count? Each of these have companies with >10B USD of revenue, so it's not like the Chinese companies are any larger. And don't tell me, it's because of the difference between product and service companies, because that is meaningless distinction from the perspective of a hardware-marker. They all need hardware to run on and arguably a service company needs more.

> _Considering the 'prestige' and money that comes with working in the US, I'd > be very surprised if the country can ever accumulate enough talent to do > anything fundamentally significant (esp. since all of the relevant > Education/Industry is entirely Anglophone)._

That was true maybe 10/20 years ago. Right now, thanks to Trump and Republicans, the US is much less attractive destination, especially for top- tier researchers. NSF funding rates are in the single digit percentage range, every year seems to see a new assault from state-level republicans on state university systems. Rising xenophobia and white nationalism obviously don't help the cause.

The situation in India is way better. There is more money available for research: the Shakti project is one example but many other big centers are being funded in various "institutes of national importance." There is a bi- partisan commitment to increasing funding and hiring for Indian research and there is a growing talent pool emerging from the non-IIT undergraduate colleges.

Twenty years ago, every R1 university in the US was better than every university in India. Now, once you get past the top-10 or 15, beyond the Berkeleys, MITs, Princetons and maybe Purdues, it's not at all clear that it is a good idea for a young assistant professor to go to say Virgina Tech over IISc or IIT Bombay. And in fact, these Indian institutes are consistently hiring people who would have been a shoo-in for a faculty position at places like VT.

<comment><USER9> > Why do Baidu and Tencent count, but Infosys and TCS not count? Each of these > have companies with >10B USD of revenue...

umm, probably because both of these companies are not exactly known for their cutting edge r&d.

<comment><USER8> On the contrary, both Infosys Research and the TCS Innovation Lab are organically growing research labs who have been steadily producing quality scholarly work for some years now.

I'm not aware of anything of note coming from Baidu research. All they've done is a splashy celebrity hire of Andrew Ng, which is the exact opposite of how one would set up a serious research organization.

</comment></comment></comment></comment><comment><USER10> As the lead architect of Shakti and the guy who helped kick-start the project, I figure I am owed my 2 cents !

1\. We never positioned it as an ARM killer ! That was the imagination of the reporter who wrote the article.

2\. Shakti is not a state only project. Parts of Shakti are funded by the govt, these relate to cores and SoCs needed by the Govt. The defense and strategic sector procurement is huge, runs in the 10s of billions of USD.There is significant funding in terms of manpower, tools and free foundry shuttles provided by the private sector. In fact Shakti has more traction with the private sector than the govt sector in terms of immediate deployments.

3\. The CPU eco-system including ARM's is a bit sclerotic. It is not the lic cost that is the problem, it is the inherent lack of flexibility in the model.

4\. Shakti is not only a CPU. Other components include a new interconnect based on SRIO, GenZ with our extensions accompanied by open source silicon, a new NVMe+ based storage standard again based on open source SSD controller silicon (using Shakti cores of course), open source Rust based MK OS for supporting tagged ISAs for secure Shakti variants, fault tolerant variants for aerospace and ADAS applications, ML/AI accelerators based on our AI research (we are one of the top RL ML labs around). 4\. the Shakti program will also deliver a whole host of IPs including the smaller trivial ones and also as needed bigger blocks like SRIO, PCIe and DDR4. All open source of course. 5\. We are also doing our own 10G and 25G PHYs 6\. A few startups will come out of this but that can wait till we have a good open source base. 7\. The standard cores coming out of IIT will be production grade and not research chips.

And building a processor is still tough these days. Try building a 16 core, quad wide server monster with 4 DDR4 channels, 4x25G I/O ports, 2 ports for multi-socket support. All connected via a power optimized mesh fabric. Of course you have to develop the on-chip and off-chip cache coherency stuff too ! 8\. And yes we are in talks with AMD for using the EPYC socket. But don't think they will bite.

Just ignore the India bit and look at what Shakti aims to achieve, then you will get a better picture. I have no idea how successful we will be and I frankly do not care. What we will achieve (and have to some extent already) is \- create a critical mass of CPU architects in India \- create a concept to fab eco-system ind India for designing any class of CPUs \- add a good dose of practical CPU design knowhow into the engineering curriculum \- become one of the top 5 CPU arch labs around

Shakti is already going into production. The first design is actually in the control system of an experimental civilian nuclear reactor. IIT is within the fallout zone so you can be sure we will get the design right. If you want any further info, mail me. My email is on the Shakti site. G S Madhusudan

<comment><USER10> Also everyone is welcome to review our code and to contribute to the codebase. It is an open source project. IIT-M incubated it but we want it to be community driven. FPGA based dev packages should be announced by jan , based on standard low cost FPGA boards. Dev parts based on ASIC parts will probably be announced 2nd quarter of next year assuming Feb/March tapeout.We would be glad to help other universities do their own tapeouts. One of the goals of Shakti is also to demystify the backend process.

<comment><USER11> Congratulation on the project. Where can one find the source? Is this the one? [https://bitbucket.org/casl/shakti_public](https://bitbucket.org/casl/shakti_public)

<comment><USER10> Yes, we will update the C Class next month since our private line has a lot of foundry specific code that needs to be removed. The I class needs more work but the design is in place. It will also move to quad issue and would be a Cortex A72/75 class core. More importantly the basic slow IPs, UART, I2C, quad/Octal SPI, SDRAM controller, JTAG, DMA, PLIC will be FPGA and silicon proven and production quality. Will be very useful to other developers (non RISC-V also) as would the AXI bus.

</comment></comment></comment></comment><comment><USER12> These folks have no qualms with ARM. They are building their own chips using the RISC-V ISA. This literally has _nothing_ to do with ARM or Intel.

The ISA isn't the hard part in building a chip, the building the chip part is. The thing they have going for using an existing ISA is that they get kernel and toolchain support.

They have many millions in support in the project and see all the reasons why they will succeed. What would be awesome is if AMD gave them assistance in getting their parts running in EPYC sockets.

</comment><comment><USER13> The Actual ARM license and IP, is relatively tiny in overall cost of the chip. It is a very small amount of money for time to market and ecosystem.

ARMv8 ( Specifically the aarch64 part ) is like a clean start. I doubt RISC-V offer any advantage, especially we should now know the uArch is only tiny part of the equation, the implementation matters a lot.

Apart from the fear of lock in or ARM suddenly hike the price 100x, what exactly is the benefits and motives for RISC-V?

Or is this more of NIH Syndrome?

<comment><USER10> The Risc-V ISA is far more modular and extensible. Also we needed the 128 bit support for our NVM storage research and single address space OS work. No MMU, T-ISA based security, VIVT caches. Other govt projects do have ARM licenses, we chose not to go that way for purely technical reasons. Our lab does have academic collaboration with ARM.

</comment></comment><comment><USER14> Good to see these fellas in action. It is nice to see that India is trying to set up a chip manufacturing ecosystem. There will be a lot of pitfalls though. From my long stint in chip design, I predict that the initial phases will be difficult. Like, the first few efforts might be defective/have odd timing bugs/power/reset problems and it will be very discouraging and frustrating. If they can push through this phase, then I can already imagine India's rise in the IoT/strategic or whatever industry they are targeting. I also hope that this effort pushes the government/private sector to set up fabs in India. Stay strong, all of us are bidding for you guys. A quick lookup on the internet shows that SHAKTI is from R.I.S.E group. We are waiting to see you rise!

</comment><comment><USER15> Glad to see open source catching up to pro proprietary in this space.

I'm assuming all their code is in this repo: [https://bitbucket.org/casl/](https://bitbucket.org/casl/)

</comment><comment><USER16> Very inspiring news! :)

Looking forward to the day when we would be able to run popular open source SW frameworks like NodeMCU and Linux on open hardware like this.

Submitted my first PR to the bitbucket repo (a minor one) [https://bitbucket.org/casl/shakti_public/pull- requests/1](https://bitbucket.org/casl/shakti_public/pull-requests/1)

</comment><comment> happy-go-lucky > The landscape is full of thick trees that have set down roots for decades. > Bats, deers, and monkeys, seemingly comfortable with the few thousand > bicycle-riding students, academics, and staff on campus, are easy to spot. > The air, thanks to a recent bout of rains in Chennai, is as good as a hill > station

In addition to the above description, a picture should have been inserted above or below the paragraph.

<comment><USER10> [http://iglc2018.com/images/iit/4.jpg](http://iglc2018.com/images/iit/4.jpg) [https://qph.ec.quoracdn.net/main- qimg-2200d147343aa841a43a07...](https://qph.ec.quoracdn.net/main- qimg-2200d147343aa841a43a07c3a3dc88fe-c) [http://2.bp.blogspot.com/_OgX4b2N9a8E/S7OVv7jxhmI/AAAAAAAAAh...](http://2.bp.blogspot.com/_OgX4b2N9a8E/S7OVv7jxhmI/AAAAAAAAAhY/E3E1YmXyrDM/s1600/IMG_1989.JPG) [http://www.mbaskool.com/2013_images/photography/landscape_na...](http://www.mbaskool.com/2013_images/photography/landscape_nature/Arun%20G-%20DoMS-%20IIT%20Madras%20-family%20time.jpg)

We are one of the last refuges of the endangered black buck. The spotted deer and bonnet macaques are more common in India. Odd that a university campus in the middle of a city is a refuge. The pic is that of an albino black buck, an even rarer mutant.

<comment><USER17> Wow!

I am happy when I can see a kestrel or a roe deer from my office. It must be amazing to work in such a beautiful scenery!

<comment><USER10> Everything has to be monkey proofed, going to the refreshment room when a monkey gang is around is like running the gauntlet ! We are talking really aggressive simians. But totally worth it, I could spend hours watching the monkeys. Surprised that we do not have a simian cognition research group on campus. The slender loris are really beautiful too but I have never seen them.

[http://www.thehindubusinessline.com/multimedia/dynamic/02331...](http://www.thehindubusinessline.com/multimedia/dynamic/02331/BLink_KalyanVarmaD_2331614f.jpg)

Now if I could get the monkeys to learn bluespec ...

</comment></comment></comment></comment><comment><USER18> Did I miss the privileged ISA becoming standard?

Sure they don't want to release a chip using the draft.

</comment><comment><USER19> It reminds me of the Loongson/Godson effort.

</comment><comment><USER20> Glad to hear that they'll be taping out one of the Shakti chips so soon. Can't wait to see what comes of the higher-end server (or workstation, if you're me) chips.

That said...

> _"The capitalist computing bourgeoisie want to enslave us all with > proprietary processing architectures, but the proletariat eventually > produces its own processor alternative – an ISA for and by the people, where > instruction sets aren't subject to the whim of the royalty-driven class, and > where licensing fees don't oppress the workers' BOMs (bill of materials)," > writes Kevin Morris in the Electronics Engineering journal, lending colour > and gravitas to what's at stake in the processor industry._

Comparing RISC-V to communism is pretty grody. RISC-V is _precisely_ a capitalist revolution, shedding a layer of state protection of the ISA from the market, and unleashing the greed, passion, and proprietary zeal of the world on the task of bringing designs to market.

<comment><USER21> RISC-V was developed by the state, in particular, by UC Berkeley, a public school. And IIT Madras is also another public school. So again, a branch of the Indian state is developing this Shakti processor.

There's really nothing capitalist about this at all.

<comment><USER20> I'm sure Bluespec, TSMC, SiFive, NXP, Samsung, Qualcomm, Microsemi, Micron, Huawei, and NVIDIA don't think of it like that, the RISC-V foundation is also not UC Berkeley. Also, strictly speaking the UC system ain't the state, if they were, they would not be allowed to generate copyrights from work produced by employees. IBM at least partially (if not completely) covered the fabrication of the original UCB RISC-V chips.

Though I'd generally agree in the case of IIT Madras, which is specifically engaging in a state effort to reduce import dependence in microelectronics (especially for defense and national infrastructure).

<comment><USER21> Strictly speaking, the UC System _is_ the state. That IBM funded some of RISC-V doesn't make RISC-V a capitalist product nor does TSMC manufacturing some silicon. The US Government and the University of California can claim intellectual property rights including patents, copyrights and trademarks. That SiFive is incorporated to exploit RISC-V as was Sun Microsystems to exploit 4.2 changes nothing.

<comment><USER20> The U.S. government can not claim copy rights on work produced by government employees. Read the statute before commenting on it, especially if you're using it as a point of disagreement.

The one way the U.S. government can come to own copy rights is by purchasing them from original rights holders. No copy right exists for any work of a U.S. government employee.

<comment><USER21> You may wish to read 15 USC § 290e. There are other exceptions.

</comment></comment></comment></comment></comment></comment><comment><USER22> ARM can't be killed at this s point. Positioning themselves as ARM killer would not be the wisest move on anyone's part.

<comment><USER23> One way to dethrone the competition might be to focus on openness:

 _There are also security reasons for wanting to make a processor for India. "We don't know really whether the processor we are getting from outside is trustworthy. Is it secure?" asks Kamakoti. "Suppose I want variants of a processor, for different needs – not just strategic, even civilian needs – I have to basically rely on the processor available to me, and fit my application to that. It is something like I bought the slipper and I am cutting my feet to fit into it."_

<comment><USER22> But in the case of ARM, you _do_ know, if you manufacture it yourself. ARM licenses intellectual property, not sells chips. Once you buy a license, you can inspect it and make sure it doesn't have the bits you don't like.

<comment><USER10> That means I have to develop all the code from scratch anyway. the arch lic just gets me a ISA spec doc.Might as well start with another ISA that is free. But the issue is bigger. Shakti is also an exercise in using a high level HDL. We would not exist but for Bluespec, we really get a 6x to 10x productivity increase over Verilog. I also get the ability to do true formal proving of the correctness of my code. There is a reason why DARPA hose bluespec for their secure processor work.

<comment><USER24> No, an ARM license gets you the implementation of a core in source form. You are free to modify it if needed, as many licensees do.

<comment><USER25> Depends on the license.

</comment></comment></comment></comment></comment></comment><comment><USER26> These guys will have to drop out and start a funded company if they want this tech to go anywhere. I don't expect IIT-M to be able to manufacture and sell the finished design.

<comment><USER27> I'm not aware of universities doing manufacturing and selling finished design, they more or less license IP.</comment></comment>


Ask HN: I have a job; should I still go on Patreon for free open-source stuff? - <AUTHOR> I am getting paid by a fulltime job. I have some free open-source stuff I do in my spare time that is used by tens of thousands of people. Should I still go on Patreon? <comment><USER2> You should. There's nothing wrong with asking for donations especially since it's helping fund an open source project that people use. If anything _not_ asking for donations is worse since there's nothing really supporting the project but your interest in it. By asking for donations your making the project stronger.

<comment><AUTHOR> True. Apart from financial aid, the motivation it might bring to see so many people appreciating and showing love seems far important.

</comment></comment><comment> james-skemp Sure, why not?

I'm a patron of a number of people who have full-time jobs and do what I know them for on the side.

Another option is librepay too. Check the recent Patreon thread for alternatives and comments.

Why do you think you can't or shouldn't?

<comment><AUTHOR> I ask this because generally people going on Patreon for open-source reason that they have been doing open-source for free and sustaining out of their last job savings. And now they won't be able to go much far on those savings, hence Patreon.

</comment></comment><comment><USER3> Definitely not, start dressing like a crazy person and use drip instead.

[https://d.rip/](https://d.rip/)

<comment><AUTHOR> wow! When did this come in? Looks good as a Patreon alternative.

<comment><USER4> It's existed for a while, was purchased by Kickstarter some time ago, and was just recently relaunched.

</comment></comment></comment><comment> a-saleh I would first check with my manager or my accountant, that I am not doing something that would violating my employment contract.

I.e. my manager is quite open about 20% of time arrangements, and we are working on several open-source projects at work, but I am not sure if taking money for working on something extra wouldn't violate something. It might be worth it to have it clearly spelled out in the contract.

On the other hand, a.f.a.i.k. in what do you do in your free time on your own hardware should be no concern to your employer, so accepting patreon donors should fall into that category as well?

Alongside patreon, I would attempt to introduce something like Varnish Moral Licence [1] as well. It looks like Mr. Kamp figured a nice way how to get a open-source sponsorship from big corporations (because from the procurement's perspective it still looks like a licence you get an invoice for even you don't promise them anything in return :-)

[1] [http://phk.freebsd.dk/VML/vmlfaq.html#isn-t-this-more-a- sort...](http://phk.freebsd.dk/VML/vmlfaq.html#isn-t-this-more-a-sort-of- sponsorship-than-a-license)

</comment><comment><USER5> What does your employment contract say about moonlighting in your own field of work? If it allows it, fine. If it forbids it, don't do it. If it doesn't explicitly say either way, consider at least informing your employer about this (even if you don't phrase it as asking for permission). It's better to have those kinds of discussions up front.

</comment><comment><USER6> I would say make it clear that you're happy working full time. Sometimes patrons expect that money would go into allowing someone to quit their jobs to work on a project.

</comment><comment><USER7> Maybe I'm missing something, but why even use Patreon, just ask for donations directly from people. As for the original question though, just because you have a job doesn't mean you shouldn't be rewarded for your open source work as well.

</comment><comment><USER8> The only thing potentially _unethical_ about running a Patreon is aggressively publicizing it, particularly in tools others use. (although I've done a call- to-action in GitHub READMEs and at the end of blog posts and there haven't been any issues.)

</comment><comment><USER9> yes. It depends more about the value you/your work brings to the world. If you are creating value , you should be able to monetize a part of it. Mind you, you might realize that the marktet value of your end product is not in line with your own valuation of it. BUt go ahead. More power to you

</comment><comment><USER10> Yes, you should.

</comment><comment><USER11> Give the money to you favorite charity at the least.

<comment> james-skemp Why? And if you're going to do that, ask the people to donate directly. No reason for all those middlemen.

</comment></comment><comment><USER12> Yes, why not.</comment>


Bitcoin Mining in Plain English - <AUTHOR> http://codinginmysleep.com/bitcoin-mining-in-plain-english/ <comment><USER2> Something that I still don't quite get: Who adjusts the difficulty. As far as I understand there still is a central server somewhere who broadcasts the difficulty and awards Bitcoins which to me kind of clashes with the distributed nature of Bitcoins.

<comment><USER3> There is no such central server. The difficulty is adjusted using an algorithm that all the bitcoin clients implement. This looks at the generation times of the last 2,016 blocks and works out from that if difficulty needs to be higher or lower.

Since all clients implement the same algorithm, they all get the same difficulty value.

<comment><USER4> Could someone program up a client that "cheats"? Or is there something preventing that.

<comment><USER3> Any blocks that client produced would not match the expectations of the other clients. The difficulty being different would mean a successful hash that solves the block may not be seen as solving it by the other clients. They would reject it and your cheating client would be on its own fork.

If you could convince others to run your client then your network would get bigger. If it got >50% of the entire network then your blockchain would effectively be the main chain.

<comment><USER5> It would also have to maintain the >50% hashing power for more than 120 blocks. And even then it's not guaranteed as smaller pools could get lucky and solve more blocks than the larger rouge miner.

</comment></comment></comment></comment></comment><comment><USER6> In the article it sounds like the bitcoins are mined serially and that someone can pip you to the post. This contradicts my understanding of bitcoin. I dont think the simplification of the mathematical process makes it at all clear.

Is it like a teacher telling a class 'what are the prime factors of 91' and awarding a sweet to the winner? Or are there many sums to calculate and anyone providing an answer gets a sweet? When the result comes out how is the source verified - in a classroom if I were sly I might be able to relay the answer to the teacher faster than the one who calculated it??

<comment><USER3> It's like a teacher telling a class "Pick a number between 1 and 1000". If they pick the same number as the teacher, they win. If more than one picks the winning number, the first person to get it to the teacher wins.

There's no "many sums to calculate" contributing towards a result. It's more a lottery - did my one calculation produce the right number.

<comment><AUTHOR> Exactly. For the statisticians in the room, it's a Poisson process. That means that over time your results should average out to meet certain expectations but each individual hash either solves the problem completely or doesn't solve it at all - no in-betweens and no teamwork.

<comment><USER6> Doesnt this mean that it youve got slower hardware then youll always lose at finding the next number?

</comment></comment></comment></comment><comment><USER7> I lost the plot where you said if there are 12 confirmations, it means that the transaction is 12 blocks behind .. :-(

<comment><USER8> Confirmations = "Current Block Number" - "Block Number your transaction is in"

<comment><USER7> Thanks. Will read again.

</comment></comment></comment><comment><USER9> So, a block chain contains all transactions in the BitCoin network since the beginning of time?

How does this not end up with having to eventually transmit multiple gigs of data every time you want to do a transaction?

<comment><USER10> Generally, the gigs of data are transmitted just once, during application setup. After that, clients can pick up new blocks are they are generated by the network. There are numerous proposals for generating a "summary block" that would securely allow a snapshot to be generated to avoid the initial download. [1]

There are light-weight clients out there that rely on a web service of some form for keeping track of the whole block chain[2].

In order to issue a new transaction, though, you only need to transmit the transaction itself: a list of signed transactions: "transfer x bitcoins from this address to this address", basically.

[1] Some suggested implementations are listed here <https://bitcointalk.org/index.php?topic=74559.0>

[2] <https://en.bitcoin.it/wiki/Thin_Client_Security>

(Edit: fixed formatting)

<comment><AUTHOR> Exactly. The integrity of the chain is kept not by including every transaction since the dawn of time in each block, but by simply including the hash of the previous block. This simultaneously shows where in the chain each block belongs and verifies that nothing about the previous block has changed.

</comment></comment></comment><comment><USER4> Really basic question, what's the purpose of mining? Was it just set up as a fair way to distribute the initial coins, or is there a fundamental on-going function it serves?

<comment><USER10> The main purpose of mining is to secure the block chain. The reward is a the incentive for miners to exist.

Each block that gets mined means that in order to undo a transaction that was previously in the block chain, an attacker would have to mine a block before the network produced another block on the main chain.

So if your transaction was in block 33123, and the chain looks like

      block 41873 : [ parent : ... ]
      block 33123 : [ parent : block 41873 ]
      block 71282 : [ parent : block 33123 ]

then in order to undo block 33123, an attacker would have to produce three blocks:

      block 41234 : [ parent : block 41873 ]
      block 39834 : [ parent : block 41234 ]
      block 58762 : [ parent : block 39834 ]

before the network produced a new block on the main block chain. So the attacker would have to have 3x the computing power of the remainder of the network.

</comment></comment><comment><USER11> Any "currency" that requires this an explanation as complicated as Bitcoin will never achieve widespread adoption.

<comment><USER12> I don't know if you've ever heard about the way central banks work, but it's pretty complicated too.

There's a difference between using the currency in transactions - which is potentially simple for both dollars and bitcoins - and managing the behind the scenes of the money supply and control mechanisms. Few people need to be central bankers, and few people need to be bitcoin miners, so I don't feel it's that big a deal.

<comment><USER11> I'm well aware of the central banks and their complexities, but bitcoin just adds a layer on top of that - ultimately bitcoin needs to be converted back to traditional currency in order to be useful for the masses. You haven't really escaped the central bank ... you've just added your own layer of complexity on top of that pre-existing and never-going-anywhere system.

<comment><AUTHOR> Bitcoin replaces that layer. I've personally transacted business in Bitcoin without converting it back to traditional currencies and it works pretty damn well, actually. At the moment the primary reason Bitcoin "needs" to be converted back into traditional currency to be useful to the masses is that they haven't started using it yet.

Think about it: if 1% of people are using Bitcoin then that means there's only a 1 in 100 chance that any given transaction you make can be made with Bitcoins. That's an admittedly low degree of usefulness. If you can get 2% of the people to start using Bitcoin it just became twice as useful and half as many transactions will now require you to convert funds back to traditional currencies. At some "critical mass" adoption level, Bitcoin becomes just as useful as any other currency without such a constant need to move in or out of traditional currencies.

It's called the Network Effect and it's a hell of a market force.

Also your argument is invalid because you could say the exact same thing about holding a bank balance in USD while living in Europe: "But I have to exchange these dollars for Euros in order to even use them at all, man this U.S. Dollar is just completely worthless and unnecessarily complex because no one around me will accept it."

<comment><USER11> "Think about it: if 1% of people are using Bitcoin then that means there's only a 1 in 100 chance that any given transaction you make can be made with Bitcoins."

You're going with the "we just need to get 1% thing", huh? What percent of the world's population is currently using Bitcoin?

<comment><AUTHOR> 1% was a completely arbitrary example, it wasn't meant to set a goal or anything. I was just illustrating the point that Bitcoin isn't ONLY good if you convert it to USD/EUR/whatever, it's just not adopted as widely as those currencies.

<comment><USER11> "it's just not adopted as widely as those currencies."

Which brings us full-circle back to my original point.

<comment><USER13> What percentage of the world's population was using the internet in 1983?

<comment><AUTHOR> I don't have data going back that far. My earliest data I have on-hand goes back to 1997 at which point about 2% of the world (11% in the developed world) had internet access. I _do_ have host count data, though and can tell you that in August of 1983 there were a whopping 562 web sites in existence. In July 1997 when only 2 (or 11) percent of people had access, there were about 19.5 million. As of January of this year there are almost 900 million.

So let's extrapolate: There were about 5.84 billion people in the world in 1997, 2% of which is about 117 million people on the internet (round numbers). Thus, in 1997, we can estimate one in every 6 internet users had their own web site.

Today there are about 6.97 billion people in the world and about 35% of them have internet access (74% in the developed world, but I digress). This means that about 2.4 billion people are responsible for about 900 million web sites - that's one web site per 2.7 internet users. If we work backwards from this imaginary (and probably wrong) line, we can estimate that there were about 3,000 internet users back in 1983.

There are currently estimates that the Bitcoin network is made up of between 15 and 20 thousand users. Let's call it 15, just to be pessimistic. Adjusting for world population that puts us about on-par with the internet's adoption level in 1987. Bitcoun is about 4 years old, while the 1987 internet was about 6 years old, which means we're growing 50% faster than the internet did. Assuming nothing gigantic implodes along the way, Bitcoin is on its way to greatness.

Of course that's assuming you can compare Bitcoin to the internet, which you probably can't ;-)

<comment><USER14> As a fairly untechnical user, I would like to add that as soon as I figured out how to actually _get_ bitcoins (bitinstant) the process became quite natural and the usefulness apparent.</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


Origin of the Abbreviation 'i18n' - <AUTHOR> http://www.i18nguy.com/origini18n.html <comment><USER2> It's amazing how often I still see "I didn't know that!" to this fact on Twitter :-)

There was a brief fad of writing entire sentences using this style of shortening words earlier this year, so I wrote a quick script to "decode" them if anyone is so inclined! [https://gist.github.com/peterc/bf495244dd098cdd7ddca241dab33...](https://gist.github.com/peterc/bf495244dd098cdd7ddca241dab33446) .. by this I can also see i18n could also cover interdifferentiation or intercrystallization..</comment>


Periscope on desktop - <AUTHOR> hi guys! I've made a website that u can view all live periscope in one page with your PC! It's under develop and some request or bug as much appreciate http://www.listperiscope.com/ enjoy <comment><USER2> Nice job, but I think a map interface in the beginning would be better considering diversity in languages and even topics around the world:)</comment>


Proud to be married to a female founder - <AUTHOR> https://twitter.com/akcura/status/569285668033032192 <comment><AUTHOR> Any body else? Lets share our support!</comment>


The email Zenefits CEO David Sacks sent employees as it lays off 9% - <AUTHOR> http://www.businessinsider.com/zenefits-is-laying-off-1006-more-people-heres-the-email-david-sacks-sent-employees-2016-6 <comment><USER2> Wow. This isn't a 9% layoff. It's 9% plus an offer for everyone else to step out. It will be interesting to see what the final # is. 20%? 30%?

I'm not a fan of testosterone talk like everyone has to be "All In" when a company is more mature. The only way this helps is if engagement is a real problem, and you need to sort out who is on the bus and who is off of it.

I will say that 3 months of severance for folks who involuntarily leave, and 2 months for folks who voluntarily leave is very generous for a company that is in trouble. It's very close to industry leaders like Netflix and Zappos, and much more than they would need to do.

<comment><USER3> Right -- it seemed fine until "The Offer" showed up. You know who takes offers like that? The people who can find new jobs really easily. It's a recipe for losing good people.

<comment> zupa-hu Maybe you are statistically right, maybe I'm just the outliar, but I'd actually love getting this letter. I'd rather work late at a company fighting for its life, with a team that holds together, in a place where it actually matters if you get something done, than at a stable company that has no pressure and has tons of time getting things done. Get out of my way and let me get shit done. I'd definitely stay, let's rock! :D

(I have zero connections to Zenefits.)

<comment><USER4> I can definitely understand that sentiment. That's the main reason I like working at super-early-stage startups. Zenefits, though, sounds like you'd have all the rough parts of that experience (eg long hours) but little of the upside. And, because of both their size and their recent trouble with regulation, there's probably very little of the "get out of my way".

<comment> zupa-hu indeed I had my best "get out of my way" experience when working at a startup

</comment></comment></comment></comment></comment><comment><USER5> It must suck to have to write these emails. But please, the last thing you should do is bury the bad news behind a bunch of gobbledygook about ARR, SMB, "reseting relationships with key stakeholders" and whatnot.

Better to cut to the chase with the blood and gore -- being careful to take the time to acknowledge that this decision is painful for others, not just "painful to make" \-- and then rebound with the potential upside.

<comment><USER6> Reading these corporate E-mails always makes me feel numb. "We have a great future, we will realign priorities to make things even greater. You are fired. We wish you all the best for your bright future, wherever it is as long as it's not here."

Reminds me of another E-mail from a while ago. "Thank your for your great work on this project. We will have a great thank you dinner in a great restaurant. (3 more paragraphs of the same). For cost saving reasons only directors and higher are invited, not you. It will be a fantastic dinner with a lot of fun".

Are they all psychopaths who don't understand what they are writing?

<comment><USER5> Pyscho- or sociopaths, no. However I've come to theorize that it's a common defensive reaction in many people to go slightly (or majorly) "numb" when they find themselves involved in actions in which others are also likely to be hurt in some significant way -- even if their role is entirely passive, and/or the action is necessary and basically unavoidable.

Which would explain a lot of the vapid e-mail announcements about layoffs / firings, as well as the tone of most rejection letters these days ("We think you suck, basically, and/or we didn't really bother to read your resume before contacting you and gobbling up all your time with our dorky interview process. Or if we did read your resume, we didn't really think about what we read or whether you'd fit the position. But either way, we hope you have a great weekend!")

</comment></comment></comment><comment><USER7> I think the way they framed The Offer is a good one. He makes it clear that he wants you to stay if you want to stay, and is giving you a way out if you're not passionate or happy in your job anymore.

Many years ago they did that at AOL (a voluntary severance package), and IIRC I don't think it came across as that sincere.

</comment><comment><USER8> Sacks has opened the first envelope. [1]

Let's see when the second one is opened. My guess is if Z2 doesn't hit their goals, sometime next spring.

[1] [http://www.design.caltech.edu/erik/Misc/Prepare_3_Envelopes....](http://www.design.caltech.edu/erik/Misc/Prepare_3_Envelopes.html)

<comment><USER9> This is the second envelope. He blamed his predecessor on "Day One" a few months ago.

Great link, though.

</comment></comment><comment><USER10> Has anyone ever published a study of the results after one of these offers? Seems like a good way to invite a lot of talented folks with healthy alternatives to leave.

<comment><USER11> I would also be really interested in the actual results since I can see it going both ways; this could incentivize a lot of talented folks to leave, or if you were incentivizing your people properly, this will just get those who were coasting to move on and leave those who were actually having an impact.

E.g. you're not going to take this offer if you expect your end of year bonus to be 40% already.

</comment></comment><comment><USER12> 3 months of severance, 6 months of COBRA, and "transition assistance" is not remotely "generous" as far as severance goes. Even when I was just coming out of a bachelor's program and had no work experience, I was able to negotiate 6 months of salary (grossed up) and a full year of continued full benefits as severance, just by asking. I have friends who have gotten significantly more severance than this even, again, just by asking. And if a firm reacts badly if you ask about severance benefits, they're just giving you free info about their dysfunction, allowing you to confidently walk away knowing you're dodging a huge bullet.

Many people complain about the language in these trite, lawyer-approved kinds of emails, and yes, it is sad that it evolves in such an anti-human direction.

But for me, the real take away is that top to bottom, investors and executives at Zenefits should be absolutely and unequivocally ashamed of themselves for offering such poor severance benefits and having the audacity to turn around and act like it's an act of generosity. The voluntary package with 2 months of severance and 4 months of COBRA defies moral comprehension.

I remember the line from the movie _The Big Short_ where Mark Baum says "Short everything that guy has ever touched" or something to that effect, out of disgust.

I think the same feeling is warranted with Zenefits' investors and executives. What a stain.

<comment><USER13> Three months seems like an unusually large severance to me. And I've never heard of an employer paying for COBRA at all.

<comment><USER12> It surprises me that you haven't heard of employers paying for extended benefits, since that is so commonly part of negotiated severance packages.

Many employees never negotiate these things, sadly, because organizations try to create a taboo about talking about what would happen if your tenure with them ever comes to an end. As a result, a lot of people are made to accept no severance at all, or extremely poor severance, like 3 months of salary, if any.

<comment><USER14> I've always liked the idea of a month of severance per year worked, starting at three months after the first year. Then again, that sort of deal doesn't always work, or fit the business.

<comment><USER12> I wouldn't consider working for a company that offered only 3 months of severance when I first join them. I don't mind if severance increases by about 1 month of salary per year thereafter, but the initial amount has to be enough to actually sustain your life over the course of an average-case next job search, which includes possibly being forced to relocate, incur travel costs for interviewing, etc., and a need to not have to worry about how your insurance will be provided.

I'd say the minimum I would consider reasonable would be 6 months, maybe more in higher cost of living areas. That's just the cost of doing business.

<comment><USER15> That seems strange to me. Were I hiring someone, I'd expect to negotiate salary, and provide 1-3 months severance. Heavy negotiating about how much I'll pay them if they're NOT working for me would set off alarm bells.

<comment><USER12> This would set off alarm bells for me about working for you, because in many areas and situations a flat rate of 3 months severance is not reasonable. You'd effectively be asking me to take a large risk, unwilling to negotiate about it, and trying to impart negative intentions or "fishiness" onto me even just for asking. That's a lot of red flags.

<comment><USER15> I don't understand what the risk is. Are you talking about relocation?

<comment><USER12> Many companies, especially start-ups, do erratic things, like hire someone and then lay them off weeks or months later even if they are doing a good job, because of restructuring, funding failures, etc. I've seen it happen many times.

If you relocate for a job, or give up a stable current job, or a number of other things, you're just essentially trusting the new company not to do this to you, and often it's completely blind trust and you have no way to know in advance if your trust is well-placed.

If they are willing to compensate you for a situation where they unexpectedly (not due to any cause by you, like poor performance or insubordination or something) throw you into unemployment, possibly in a new location where you lack a professional network to find the next job, or where you would not choose to stay apart for the job you took, it shows a willingness on their part to _earn_ your trust.

It's extremely bizarre to me to hear someone characterize taking a new job by saying "I don't understand what the risk is." It's a huge, huge risk every time that the new place is going to treat you badly and that you could not have seen it ahead of time because they didn't emit red flags during the hiring process. And many ways of them erratically treating you badly results in you suddenly having no income or insurance and needing to figure out what to do -- a situation that should absolutely never be financed out of your personal savings (though, often it is because people rarely negotiate adequate severance).

Perhaps you've been very lucky with working for good companies and just haven't experienced how prevalent this is.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> I'll be another data point for "I'd totally leave if after reading this email, even if I wanted to stay before I read it."

As a point of reference, a (long-established) company gave me over $50k (cash) in severance after 4+ years of service. That was what I'd consider "generous".

</comment><comment><USER17> I went through a couple rounds of interviews with them a few months back. It was a really odd and disjointed experience in general, and the staff seemed completely checked out. I had to politely decline.

</comment><comment><USER18> "We want you staying late to help out on a project. We want you busting ass on Z2. The next few months are going to be an exciting time at Zenefits and we want everyone participating in that.

But if you can't get excited about that, then frankly we need you to make space for someone who will."

Seems like a strange way of lifting moral during tough times.

</comment><comment><USER19> The voluntary layoff says nothing about stock. Are there still employees being held hostage by golden handcuffs?

</comment><comment><USER20> I think my favorite part of all this is that Sacks has dubbed his start at Zenefits as "Day One" and is dubbing this Tony Hsieh move "The Offer".

I imagine that after today he will go home to The Woman and sit in The Chair and pat David The Dog on his scruffy head while feeling well accomplished.

<comment><USER21> I would quit just by reading this kind of terminology. "Day One", "The Offer", is this a company or a cult?

<comment><USER22> "is this a company or a cult?"

That's a good question to ask of a large number of startups, in my experience. There's a fine line between "strong culture" that everyone seems to be pushing for, and "this is crazy."

</comment></comment></comment><comment><USER23> "The Offer" \- brought to you by the LeBron James school of self-marketing and endearing yourself to people.

</comment><comment><USER24> By tech standards, this is an extremely generous severance. And, in the Bay Area, 3 months would be more than enough time for a young (under 30) person to find a job. Unfortunately, it may not be that way in Arizona, but that's not the CEO's fault.

I have to give the CEO credit. He's probably had to fight his CFO and board tooth and nail to get that package. I view it the same way that I view Obama's work on health care. Is it perfect? No. But it's better to compromise and get something done than to get nothing accomplished at all. What do you expect Sacks to do, stand up to his board, get fired, and then have everyone get nothing?

Most tech companies, when they lay people off, don't offer severance or even announce a layoff. They hide it as a "performance" based layoff or put in a stack-ranking system. Sacks is trying to do the most honorable thing that he can.

This is also a way for CEO Sacks to distance himself from the Y Combinator way of doing things. YC would advise him to do the standard sleazy startup thing. He's not doing that.

<comment><USER12> > By tech standards, this is an extremely generous severance. And, in the Bay > Area, 3 months would be more than enough time for a young (under 30) person > to find a job.

Wrong on both accounts. They say to factor about 1 months of job searching for every $10k of salary you seek, and I have found this to be highly accurate when searching in New York and in Boston -- certainly also true in SF. Keep in mind that most SF start-up jobs are ludicrous start-up bullshit -- yes maybe you can easily hop to these jobs, but they don't actually provide enough compensation to support living there. Being able to hop to these jobs isn't a reasonable backup plan, despite how many deluded folks try this for a while before moving away.

> I have to give the CEO credit. He's probably had to fight his CFO and board > tooth and nail to get that package.

This is not how companies work. The CEO isn't some champion for the people. This was a careful decision with forethought by all parties, planning ahead for how it would be perceived in media, what impact it might have for future recruiting. If you think of the CEO as some kind of chivalrous champion of the common man, you have a very naive understanding of how companies work, and how bureaucracy in general works.

> Most tech companies, when they lay people off, don't offer severance or even > announce a layoff.

In part this happens because of the taboo created to make it "bad" to talk about failure modes, like someone's tenure ending. Most people are too scared to negotiate this because they are afraid it will make them look like they're already thinking about how to leave or something, which is silly.

But in general, this is just false. My experience, at least, and the experience of many tech colleagues I've had, contradicts your claim.

> This is also a way for CEO Sacks to distance himself from the Y Combinator > way of doing things. YC would advise him to do the standard sleazy startup > thing. He's not doing that.

This is a bizarre comment. While I agree that Y Combinator is sleazy, I think it's clear that Zenefits is awfully sleazy too, and that this severance arrangement is pure sleaze by Zenefits.

<comment><USER25> > They say to factor about 1 months of job searching for every $10k of salary > you seek

This comment in no way applies to tech jobs in SV.

It's unfortunate that a lot of these losses will happen in AZ though.

<comment><USER26> That is the most insane rule I have ever heard. Salary is not related to search time, demand is.

I know if programmers making 100k find a new job in a week, and factory workers making 30k take 2 years to find a job. I don't have enough data to back up the exact "rule of thumb", but I would eat my shoe if it looked anywhere close to 1 month per 10k of salary.

<comment><USER12> > I know if programmers making 100k find a new job in a week, and factory > workers making 30k take 2 years to find a job.

Yes, unrepresentative outliers exist. I don't see your point.

This is a frequently cited rule of thumb by professional recruiters and those who work as specialists to help candidates improve their job search and find a job. It's been around for a while and applied to many industries, though certainly some are different. I'm not claiming it always holds, or even that things will always be the way they are now, just that it's a good rule on average for most jobs, and it's definitely a good rule of thumb for software jobs, even in the middle of SV.

The reason it takes a long time is that you're assessing goodness of fit. The case when you're just looking to immediately jump ship and you have essentially no standards besides compensation (this happens a lot in SV) is not being considered and is irrelevant in a discussion about severance anyway.

You're also speaking from the perspective of someone looking solely in a confined geographic region -- meaning you're not considering the vast amount of job searching that involves considering relocation, in which case just up and leaving your old life behind on a whim after finding a job in one week's time is a ludicrous outlier. What about people with families? You're thinking about this from only a single, narrow perspective that is an outlier in terms of the total volume of jobs. The volume of jobs in SV for which people apply who have low search standards and who are in life positions to just accept possibly relocating or significantly changing their commute on a whim is a tiny fraction of the total volume of jobs, so again I just do not see the relevance of these anecdotes.

> Salary is not related to search time, demand is.

This is very naive. Salary is loosely a measure of how irreplaceable your labor would be, and is also an expression of demand, both of which affect search time. Salary is definitely causally related to demand, so it's at least a proxy.

Again, no one is claiming there is some hard theory to propose an economic law relating search time to salary. It's just a heuristic, most likely _because_ salary is a proxy for demand -- one of the most ubiquitous ones.

You seem to just glibly deny this but don't even pause to consider that salary is in part a proxy for demand.

The bigger thing is that after you begin earning a salary that you're happy with, you know what you're worth and you know the rough salary range you'll be seeking, and you'll spend some time interviewing at places that can't come near it, but eventually you'll figure out how to target the right places.

When you do, then it's not about salary -- it's about work/life balance, flexibility, whether you'll do the kinds of projects you want to do, commute, relocation, whether you like the area you'll move to, how bad are the company politics, etc.

This is a massive and difficult combinatorial optimization problem and even conditioning on finding places that offer in your desired salary range, if you take these other life factors at all seriously, it takes a long time to find an acceptable fit.

Given that increasing salary is generally related to increasing seniority (thus age, and thus also more complex life situations with spouse and children or family elders in need of care, etc.) and to increasing responsibility (thus politics and subtle factors will greatly affect your experience in the new job, much more than compared with lower salaried workers in general) it's very reasonable to propose that as salary increases, search complexity increases, and so search time to find an acceptable role also increases.

Again, outliers exist. Deluded folks who just want to maintain a certain kind of status lifestyle in an urban center may just jump to _any_ job that sustains that lifestyle -- that's a super uncommon way to search for a job in the market overall, even if it's not uncommon in a market like SV. It's just not useful for general heuristics.

I mean, an even more obvious outlier example would be getting hired due to a professional connection. You might spend _zero_ time looking for a job and have it just offered to you. But we don't go around making general heuristics based on extreme outlier experiences like that -- and people living in those outlier experiences know that they don't need to use the heuristic.

<comment><USER26> Sorry I don't agree with any of this.

Yes a CEO finding a new job will take longer than a Fast food worker. But no, there is no linear relationship between salary and time to find a job.

<comment><USER12> It's fine to disagree, but you're not making any points or arguments, only asserting the opposite with no supporting information apart from that you just happen to think the opposite.

That's fine, but you've got to agree that no one should find that convincing. Since my experience, the experience of my peers, the advice of many career counselors and recruiters, and the rough arguments I sketched all do support what I'm saying, I'm still going to believe it, and believe that your choice not to engage with it is not a reasonable take on it, much like your focus on very small outlier experiences, like quick job hopping in SV, is not a reasonable thing to base any of this on.

<comment><USER27> Maybe you're just not that desirable of a job candidate, or you're living in an area without that many jobs. It's never taken me more than 2 months to find another job, and all my jobs have paid more than 20k (except the unpaid internship I took in college).

<comment><USER12> Your anecdotal experience isn't very important though. I've gotten jobs with search times of 3 months, 1 month, 16 months, and my current search is 14 months. The salary weighted average would put it close to, but slightly less than, 10 months, and the average salary is a bit higher.

No one's claiming it's a perfect rule. Only that it's useful on average.

I do live in an area without many jobs for the current search, but I am not searching for jobs in this area, only in other areas with many jobs. In previous searches I was living in large urban centers with well-known tech companies, large start-up communities, famous universities, etc. etc. and it did not materially make the search time shorter on average.

Overall though, I don't care as much about your anecdata vs. my anecdata. I more believe the heuristic because _so many_ people describe it as accurate and it has been around a long time and vetted by people who work in recruiting professionally.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> David Sacks

* takes responsibility for the situation.

* admits that he's laying people off, rather than disguising it as performance-based firing.

* offers a severance that is generous by tech standards, and

* allows people whose roles have changed to escape with severance and their reputation intact.

This is very much not the Y Combinator way of doing things. Are we sure that Zenefits was once YC?

<comment><USER28> We've banned this account for repeated abuse using sockpuppets. I explained this at [https://news.ycombinator.com/item?id=11904067](https://news.ycombinator.com/item?id=11904067), but want to add here that this (seemingly in-passing, but really the point) smear of Y Combinator could not be more of a lie. Telling such lies in a persuasive-sounding way, while never substantiating them, is this troll's specialty.

We go out of our way to moderate Hacker News less, not more, when people criticize YC. But that doesn't mean anything goes, and in this case the abuse crossed the line a long time ago.

</comment></comment><comment><USER29> My favourite part was 'we have reset our relationships with our key stakeholders'. This kind of implies there is a button he can press and everything is ok. Personally I wouldn't send mails with such unsubstantiated nonsense, but there you go.</comment>


Developers need to learn to negotiate - <AUTHOR> http://www.expatsoftware.com/Articles/developers-should-learn-to-negotiate.html <comment><USER2> If you're interested in this topic, you really need to read patio11's take on this subject. (This expatsoftware article seems to be based, in part, on Patio11's article but doesn't t credit him.)

[https://www.kalzumeus.com/2012/01/23/salary- negotiation/](https://www.kalzumeus.com/2012/01/23/salary-negotiation/)</comment>


How the CIA Watched Over the Destruction of Gary Webb (2014) - <AUTHOR> https://theintercept.com/2014/09/25/managing-nightmare-cia-media-destruction-gary-webb/ <comment><USER2> Discussed in 2016: [https://news.ycombinator.com/item?id=12667390](https://news.ycombinator.com/item?id=12667390)

<comment><AUTHOR> Thanks for the link. I guess the url changed? Otherwise it would have redirectes my submission attempt.

<comment><USER2> It stops redirecting after a year or so, which is the window for considering something a duplicate on HN: [https://news.ycombinator.com/newsfaq.html](https://news.ycombinator.com/newsfaq.html).</comment></comment></comment>


PHP desktop GUI framework with HTML5 Chrome/IE engine - <AUTHOR> https://code.google.com/p/phpdesktop/ <comment><USER2> Is anyone actually using this?

<comment><AUTHOR> About 40k downloads over the last year, 204 topics on the forum and 145 issues in the tracker so far. So, there is some activity.</comment></comment>


Any positive number can be written as a sum of three palindromes - <AUTHOR> http://somethingorotherwhatever.com/sum-of-3-palindromes/ <comment><USER2> For those wondering, this works in every base ≥ 5, according to the original paper: [https://arxiv.org/abs/1602.06208v2](https://arxiv.org/abs/1602.06208v2)

Every time I see something like this that is dependent on base-10 representation, I'm always curious to know whether it generalizes, or if it's a quirk specific to base-10 representation. For example, being able to tell if a number is divisible by 2 or 5 by only looking at the last digit.

<comment><USER3> And according to the Numberphile video ([https://www.youtube.com/watch?v=OKhacWQ2fCs](https://www.youtube.com/watch?v=OKhacWQ2fCs)) there is a prior paper showing it for bases 2, 3, and 4

<comment><USER4> Not base 2. All palindromes in base 2 have a 1 in the last position, because there's a 1 in the first position. This means that any addition of 3 palindromes must be odd because the result of the addition is guaranteed a 1 in the ones position, meaning even numbers can't possibly be represented that way. This is discussed in the original paper at the bottom of the second page: [https://arxiv.org/pdf/1602.06208.pdf](https://arxiv.org/pdf/1602.06208.pdf) , which I've expanded out a bit since they just mention the evenness without the argument I give. They say base 2 needs at least 4 summands, but their phrasing suggests to me that's intended as a lower bound, not that they have a proof 4 is always sufficient. (Not to mention it would have to be more complicated than that anyhow since it would have to be something like "3 for odd and 4 for even above some threshold", or some other bounds.)

<comment><USER5> This site uses 0.

</comment></comment></comment></comment><comment><USER6> It seems to go for the "least interesting" result. eg: I gave it 363 and it gave me back 363 + 0 + 0, which while technically true, 121 + 121 + 121 would have been more in the spirit of it, IMO. Or even 242 + 121 + 0 would be a little easier than just reusing the original palindrome number with zeros.

<comment><USER7> Well it proofs the existence and there are many special cases they consider. If the number is a palindrome already there are many possible solutions. Using zeros is a trivial an the simplest solution. Using anything else would be abitrary and longer too.

</comment></comment><comment><AUTHOR> From this numberphile video - [https://www.youtube.com/watch?v=OKhacWQ2fCs](https://www.youtube.com/watch?v=OKhacWQ2fCs)

</comment><comment><USER8> Looks like code is at [0]. Didn't read in detail, but how difficult is it to find these 3 palindromes for something like a 100 digit number? Or, asked another way, how hard will it be to crack my new 3-palindrome-sum-factor based encryption scheme (assuming I have rules about not having easy factors)?

0 - [https://github.com/christianp/sum-of- palindromes](https://github.com/christianp/sum-of-palindromes)

<comment><USER9> Uniqueness would be a problem. The sum isn't guaranteed to have unique terms.

2 is (2,0,0) and (1,1,0).

<comment><USER10> Huh, so its related to the problem of finding the restricted weak compositions of a number.

A composition is an ordered partition. A partition is the set of numbers that sum to a particular number. The 'weak' part allows zeros.

</comment></comment></comment><comment><USER11> Wonderful wonderful website.

What happends to quirky people like this when they leave university and enter the industry?

<comment><USER12> Is there such a thing as "interactive nonfiction"? Because if not, there should be. Design educational websites this way and watch children learn.

<comment><USER13> > Is there such a thing as "interactive nonfiction"?

The real physical Universe is interactive nonfiction.

<comment><USER14> The real physical universe doesn't offer tooling for playing with advanced math, though.

<comment><USER15> > The real physical universe doesn't offer tooling for playing with advanced > math, though.

The real physical universe is nothing _but_ tooling for playing with advanced math (but it's not always easy to figure out what the advanced math is, or how best to play with it).

<comment><USER14> IMHO that's like saying higher level programming languages than assembly are unnecessary. Or that a debugger is useless.

And not just the learning purposes. Imagine the possibilities if we could properly simulate (and speed up the simulation) the world - what if we could use genetic algorithms to develop an organism.

<comment><USER15> > IMHO that's like saying higher level programming languages than assembly are > unnecessary. Or that a debugger is useless.

These two statements are quite different. Higher level programming languages than assembly _are_ unnecessary; anything beyond the lambda calculus is unnecessary (assuming our goal is to compute Turing computable things). That's very different from saying that they're useless; just because they _can_ be done without doesn't mean that they _should_.

<comment><USER14> I know that these statements are quite different, I deliberately made two different examples - one about creating and one about debugging. A world simulator is going to be a test environment for us as well as an introspection tool.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> For those who are not impressed when they enter "3" and "444", try something like "8239419503490293592", and prepare to be blown away.

<comment><USER17> I figured it had small cases down so I immediately went for a fifteen digit number from /dev/urandom and was happy that it solved it perfectly. But I'm probably the exception.

For those wondering how to generate random numbers, it's simple if you don't care about a little computational overhead: </dev/urandom tr -dc 0-9 | head -c 15 (substitute 0-9 for any character set like a-zA-Z or \ -~). I use this to generate random PIN numbers after it took too long to read the pwgen man page, and I might start to use it as replacement for pwgen altogether since it only uses very basic tools that are available everywhere, unlike pwgen.

To explain the command: we read urandom into tr's stdin; tr translates (like "echo haha | tr a u"); with -d, tr deletes instead of substituting; with -c, it takes the compliment set (so everything except what you specify). Basically we're filtering characters or of urandom's output. Finally, we limit the output to a certain number of characters.

<comment><USER18> Cool one-liner to get random digits. On OSX, it produces the error "tr: Illegal byte sequence." The solution, per [https://unix.stackexchange.com/q/45404](https://unix.stackexchange.com/q/45404), is to prepend the script with "LC_CTYPE=C ":

LC_CTYPE=C </dev/urandom tr -dc 0-9 | head -c 15

</comment></comment></comment><comment><USER19> If a(n) is the number of ways to write n as the sum of three palindromes, the sequence a(0), a(1), a(2), a(3) is kind of interesting.

[http://oeis.org/A261132](http://oeis.org/A261132)

<comment><USER15> > If a(n) is the number of ways to write n as the sum of three palindromes, > the sequence a(0), a(1), a(2), a(3) is kind of interesting.

Do you just mean "the sequence a(n)"? I don't see anything especially interesting about the first 4 terms.

<comment><USER19> Yeah, a ", ..." got left out.

</comment></comment></comment><comment><USER20> I like how the JavaScript functions support different bases (5 or greater), but the page itself doesn't. It makes me want to play around with it in the browser console...

</comment><comment><USER21> Every positive number is a sum of infinite palindromes since they include 0 as a palindrome. Try entering 101.

<comment><USER22> It's easier to find more than fewer palindromes that when summed up will give a certain number. Finding just the three, is not that easy.

<comment><USER23> And just to clarify, the greedy algorithm (take the largest palindrome less than the number you're trying to express) doesn't work. To take a random nine- digit example (literally the first one I tried): 635932028 = 635929536 + 2442 + 44 + 6. In general you can express N as a sum of something like log(log(N)) palindromes this way, which is not quite constant.

</comment></comment></comment><comment><USER24> Literally just resets and refreshes the page when I hit the submit.

<comment><USER25> You need to allow Javascript

</comment></comment><comment><USER26> Small nitpick

> Yes, I can do this for any whole number bigger than zero.

Should say "Yes, I can do this for any whole number zero or bigger." since 0 is a palindrome

</comment><comment><USER27> This reminds me a bit of Fourier transformations from time- to frequency- domain.

Where an arbitrarily complex time-series signal can be accurately represented as the sum of various sine waves.

Except the OP deals with a discretized values, not real-number values, and the OP's approach lets the constituent palindromes start/end at an arbitrary offset, rather than having to be repeated continuously.

</comment><comment><USER28> The most impressive part of this calculator IMHO is the animated text, it dresses up a parsing script and function into a very nice package. I say good job, I wonder how difficult it would be to show a list of all the combinations of three "palindromes" for a given number?

</comment><comment><USER29> Could this trick be used to improve compression? Since palindromes contain repeated digits by definition, perhaps they are more compressible than the original number? Of course, you'd have three numbers to compress instead of one...

<comment><USER30> Palindromes can be compressed 50% by using their symmetry. Representing a number as 3 palindromes would "compress" a number to 1.5 times the original size in the worst case. Obviously not an improvement.

If the number itself happens to be a palindrome, you can get down to 50%, but that's completely unrelated to this trick.

In general, it's impossible for a compression algorithm to losslessly compress all numbers to a shorter representation, it can only make some numbers shorter and others longer. (Pigeonhole principle: there are not enough short codes, so if you assign a shorter code to all numbers, some will get the same code, making the compression not lossless.)

Practical uses of compression are all about reducing the average length given a nonuniform probability distribution, so a palindrome-based compression scheme would only be useful if you could expect most numbers you're dealing with to be palindromes.

</comment></comment><comment><USER31> Prepare to see in this question in programming waterboarding interviews.

</comment><comment><USER32> 42 pages <insert scared emoji>.

in all seriousness it is always amazing to see simple theorems rely on such complex proofs

</comment><comment><USER33> i'm underwhelmed

77777777777777 +0 +0 =77777777777777

<comment><USER34> yeah....I don't see why this such an "impressive" trick.

<comment><USER35> OK tough guy, please give me three palindromic numbers that add up to 1,234,567. And don't use the trick! And don't use brute force!

<comment><USER34> 1,234,567 + 0 + 0 = 1,234,567

<comment><USER15> > > OK tough guy, please give me three palindromic numbers that add up to > 1,234,567. And don't use the trick! And don't use brute force!

> 1,234,567 + 0 + 0 = 1,234,567

The first of these is not a palindrome.

</comment></comment></comment></comment></comment><comment><USER36> I entered 55555 which gave the underwhelming result of 55555+0+0 :/

<comment><USER37> Would you prefer 11111+11111+33333 instead?

<comment><USER38> Still a bit boring, feels like cheating, something like 12321 + X + Y would be nice.

<comment><USER39> 55555 = 12321 + 43234 + 0

:)

And if you don't like that:

55555 = 12321 + 23132 + 20102

Palindromes are sort of the least surprising numbers to have this property because you can easily "split" them into as many palindromes as you want like this. The surprising result is that you could write something like 19837100018374 as the sum of _only_ 3 palindromes.

<comment><USER40> More surprising is that you can do it in any base >= 5

</comment></comment></comment></comment></comment><comment><USER41> Why three? Anyone have a theory (or the answer)?

<comment><USER42> Well, there is a whole 40+ page paper on the algorithm and its proof of correctness. So, yes there is an answer. [https://arxiv.org/abs/1602.06208](https://arxiv.org/abs/1602.06208)

<comment><USER41> The intent of my question was an answer that doesn't require reading 40 pages of mathematics proof (and before that learning _how_ to read 40 pages of mathematics proof).

</comment></comment></comment><comment><USER43> In any base?

<comment><USER44> Yes the theorem holds for any base.

</comment></comment><comment><USER45> 1000 = 999 \+ 1 \+ 0 \--- That don't impress me much.

<comment><USER46> Why?</comment></comment>