Hacker Newsnew | past | comments | ask | show | jobs | submit | optforfon's commentslogin

Google controls Android due to the PlayStore

Just an anecdote. I'm currently living in China and me and the other expats were always kinda amused that local Chinese are willing to spend the equivalent of 2 months of their salary on an iPhone. Apple's grip on the market is absolute here

At first, like some high brow NYT journalist, I thought it must be a cultural thing. People looking for a status thing, a vanity thing in a image conscious society. Or a the very least they're willing to fork over tons of cash to get a good quality device bc they don't trust their own phone makers. But the local phones are actually hardware-wise okay. And they have decent warranty support (not Apple level.. but still)

But after watching a friend struggle with an Android phone, I realized that the problem is the apps. There is no GooglePlay store, just crappy 3rd party stores like the Xiaomi Store. These stores have basically no standards when it comes to app quality and Chinese apps are horrible bloated virus-like monstrosities that slowly cripple your phone till it barely works and the battery dies after half a day. All the permissions managers and security features in the world don't stop the system from being a complete disaster here.

If anyone wants to free Android - they need to make a good play-store alternative that only allows high quality apps. They you can make your Android fork and whatever else you want


My Android phone was practically dead in China.* My iPhone worked completely fine. And like everyone use an iPhone 7 and an AppleWatch 2 in tier 1 cities. And the rest of China seem to use non-Google Android phones with a different AppStore.

* not even connecting to WiFi worked, as it tries to connect to a Google domain to check, which is blocked. (iPhone connects to apple.com to check, though that domain works fine)


Google refused to indulge China's oppressive dictatorial laws with search. Apple follows similar ideals so they work well together.


One thing that needs to be stressed is that realistically there is a rather limited amount of Uranium than can be extracted from the earth for nuclear power. That if we could magically convert to 100% nuclear power - it wouldn't last that long.

from wikipedia

"Still, the world's present measured resources of uranium, economically recoverable at the arbitrary price ceiling of 130 USD/kg, are enough to last for between 70 and 100 years"

https://en.wikipedia.org/wiki/Nuclear_power#Conventional_fue...

reactors have a life of around 60 years I think. So maybe you could double the amount of nuclear power? But it's not like the world can magically go to 100% nuclear indefinitely.


That "arbitrary price ceiling" is exceedingly arbitrary. You get a lot more than $130 worth of electricity from fissioning a kilogram of uranium even with present technology. In current U.S. power reactor designs (no breeding) you can get about a million kwH of heat from one kg of uranium. If you figure 30% efficiency and 12 cents per kWH, that's about $40,000 worth of electricity.

It should be clear that even with present technology uranium is economic to recover at prices dramatically higher than $130/kg.

If breeder reactors are used the recoverable energy from a kg of uranium goes up by a factor of 100 or so, making that kg of uranium worth about $4 million in terms of electricity.

With that technology it would be economically feasible to recover uranium from sea water, and there's enough of it in the ocean to last for billions of years.


Reprocessing can massively increase utilization. All that U 238 can also be burned once it is Pu 239.


Plutonium and Thorium are other options.


I'm not really fully involved in the ecosystem too much, but has open source hardware really paid off? Like I see that you can get cheap knockoff Arduinos - but that's not really moving things forward. Are people forking board designs and selling their own twists? (honest question..)


I think that's a really good question. How many people make derivative designs from the Arduino is hard to say. It seems more common to prototype with an Arduino, and then when moving to a product to do a custom board design (as lets face it, integrating an AVR or M0 microcontroller isn't particularly challenging). I think the community of people producing 3d printer motor control PCBs etc is a great example of a successful open hardware effort.

I believe open source silicon design has much more to offer than just lowering unit costs and increasing profit margins for the existing dominant players. This is why we are established as an independent not-for-profit - we want open source hardware to benefit everyone, and its design to be a truly collaborative process. We have a long way to go, but that's the direction we want to help move things in.

We are set up as a UK Community Interest Company, which that means we define a particular community we hope to benefit. For us that is anybody who may either adopt or benefit from open source hardware - whether they're a hobbyist, academic, small startup, established company, and whether they're currently sponsoring our efforts or not.


In the Arduino case, open design of the board is a major factor in the ecosystem success: Arduino itself is a derivative from the Wiring board. Board like the lilypad were invented and derived and opened new avenues to Arduino-based projects (wearable in the case of the Lilypad). There are many specialized arduino-derived boards, and of course the shield ecosystem. Having a common, simple IDE is also a big part of the success, and was helped by open design and specs. For better or worse Arduino and friends are the go-to boards for prototyping, from humble beginnings as artist workshop helpers in northern Italy more than a decade ago.

For a more recent interesting example, Josef Prusa built and gave away its design for its 3D printers, they were cloned by dozens and sold everywhere in the world. When he launched his company, he had instant recognition and thousands of customers ready to buy. (The reprap community is a fascinating example of real open innovation, advancing very differently than labs or startups or big companies would)


I don't get Arduino phenomenon. AVR devices can be simply wired on breadboard. Also usually there is more suited device for project than throwing 328P everywhere.

And arduino uses UART bootloader, which uses up UART port and doesn't offer debugging. They have addational chip on board for usb<>uart, so why not instead use uC which can act as programmer and debugger using normal interface?

Atmel(Microchip now?) also have some nice XMEGA uCs with much more perpipherals that ATmega series, but are pretty expensive.


The advantage of the Arduino is that it's a standard that "just works" with absolutely minimal time investment of getting started. You can have an Arduino up and running with a flashing LED before you've even assembled the breadboard and installed the toolchain for another solution.

As a standard, users benefit from being able to share instructions that have a high chance of working on someone else's system.

Obviously these are most relevant for beginners or those with a short time to invest. But that's the market that Arduino practically created. It simplifies the decision making process: if you're a beginner, start with Arduino. Once you've used it for a bit, you'll be aware of the limitations and have an opinion on which alternative to switch to.


Arduino is popular because you can download a single program, buy a fairly cheap board, plug it into USB and program it easily. Also it was the very first system to make microcontroller programming vaguely affordable, so it has kept a lot of mindshare due to that.

There's literally no other systems that are as simple as Arduino for newbies to use. The only one I know that is vaguely close is mBed, but that uses an online compiler (gross), or a relatively complex and not that great CLI interface. Arduino's IDE may be shit but at least it is simple and easy to install.

Almost everything else involves complex JTAG/SWD programmers and weird OpenOCD command lines and frankly that is just shit. Even as an experienced embedded developer the state of the tools is embarrassing.


>"Also it was the very first system to make microcontroller programming vaguely affordable"

I'd suggest that the BASIC Stamp got there before the Wiring/Arduino:

https://en.m.wikipedia.org/wiki/BASIC_Stamp


The same reason you would use C when assembly could yield a much smaller and more efficient binary. Ease of use. And through having more things done for you less chance of error.


It works pretty good for CERN. http://www.ohwr.org/


The problem is immature tooling. There is no feedback loop from the compiler's generated assembly back to the IDE. We finally have libclang which sorta does some stuff (I'm not entirely sure how far it can go) - but I'm honestly not seeing any work being done in this direction on the IDE level. After all these years of C++ development, why doesn't the IDE do something as simple as tell me if a function is being inline or not is beyond me (that's the tip of the iceberg in terms of what I want to know).

When I asked people at CppCon about it I just got some shrugs and was told "just go look at the assembly".

Another solution is profiling - but that's got a slow turn around, and it can be hard to narrow down problem areas.


For Lisp, SBCL is known for giving optimizations notes:

    ; note: forced to do GENERIC-+ (cost 10)
    ;       unable to do inline fixnum arithmetic (cost 2) because:
    ;       The first argument is a NUMBER, not a FIXNUM.
    ;       The second argument is a (INTEGER -19807040623954398379958599680
    ;                                 19807040623954398375663632385), not a FIXNUM.
    ;       The result is a (VALUES NUMBER &OPTIONAL), not a (VALUES FIXNUM &REST T).
    ;       unable to do inline (signed-byte 64) arithmetic (cost 5) because:
    ;       The first argument is a NUMBER, not a (SIGNED-BYTE 64).
    ;       The second argument is a (INTEGER -19807040623954398379958599680
    ;                                 19807040623954398375663632385), not a (SIGNED-BYTE
    ;                                                                        64).
    ;       The result is a (VALUES NUMBER &OPTIONAL), not a (VALUES (SIGNED-BYTE 64)
    ;                                                                &REST T).
    ;       etc.
Note also that the approach is different there: integers are not modular, but you can still perform modular arithmetics if the range of values is adequate (http://www.sbcl.org/manual/#Modular-arithmetic).


Also SBCL has instruction level profiling.


Starting with VS 2015, Visual Studio does show execution time for each function call during a debugging session, while stepping.

Also switching between source view and Assembly alongside original source view is a key away (F12) for all Microsoft languages.


Except it's going to go hand in hand with nationalism and fear-mongering. It won't bring people together and that ultimately a lot more sad.


> Except it's going to go hand in hand with nationalism and fear-mongering.

So did the first space race, and it went pretty well, and cooperation between the US and Russia still took place eventually.


uhhh, well I'm sure the space race didn't help in reducing tensions.. but you know all the proxy wars and thousands of soldiers dieing prolly played a bigger role.

There really shouldn't be an use vs. them with China. That's incredibly toxic thinking (trying to create an new Cold War)


> There really shouldn't be an use vs. them with China.

I never said there should be. All I said is that nationalism and fearmongering did not prevent the first space race from going well, and did not prevent eventual easing of tensions.


I think this is only true when you look at political speech (where the sacred phrase "founding fathers" can justify most things)

But ultimately at this point the US is culturally on a completely different level compared to backward nationalist countries like Russia. Maybe you're not familiar with American education, but a good portion of what we learn at a young age is actually national self criticism. In my personal experience I'd estimate almost half of my history education up to high school was on

- the terrible things we did to the Native Americas

- the terrible things we did to Slaves

- the terrible way we oppressed African Americans

Even when we learn about the founding fathers, time is always take out to point out the hypocrisies that happened at the time. I think the fact that a bunch of intelligent men were able to found a national structure that has lasted this long and has managed to regulate itself away from tyranny is truly magical and a great historical achievement. The more I learn about it, the more improbably it all seems - there were so many chances for it to go wrong. What are they on in France, their fifth republic? Or is it their 6th?


The rational for killing the local population is fundamentally different

Nanking was massacred as punitive action for resistance, not as a means of creating space for the Japanese. They Japanese did have "colonists" in Manchuria, but if you know any geography that's nowhere close to Nanking.


6 million killed is a lot of punitive action and the second link is more than Nanking.


That was six million from the 1937 to the end of the war, and it includes things like death from disease and forced labor. It's not that the Japanese had a plan to exterminate the Chinese. It's that they viewed the Chinese as inferior to themselves and didn't care about Chinese deaths.

The Germans (or at least, the Nazis) had a plan, on paper, to kill everyone in the east and replace them with Germans. Hitler was a Malthusian who believed populations would grow until resources were exhausted, he viewed non-Germans as competition for those resources, and he thought birth control and abortion would reduce genetic competition and make the German race weak (like the French...). So the only solution was to kill everyone who wasn't German.

Here's a quote from Himmler's wiki page: "It is a question of existence, thus it will be a racial struggle of pitiless severity, in the course of which 20 to 30 million Slavs and Jews will perish through military actions and crises of food supply." This was all planned out, and it was going to be on top of the deaths that actually occurred.


> It's not that the Japanese had a plan to exterminate the Chinese. It's that they viewed the Chinese as inferior to themselves and didn't care about Chinese deaths.

I regard it as a distinction without a difference. Six million people are dead because of Japan's actions. Without intervention, that number would have continued to climb.


Certainly considering the uncountable victims, quibbling over semantics might seem absurd.

But I think it is very productive to look very closely at the exact rhetoric that caused murderous excesses of WWII with a view toward prevention.

After all, both Germany and Japan were not very unusual in the generations before the war. And are today among the most charmingly pacifist countries on the planet.

But somewhere in the 1930s their leadership whipped their people into a murderous frenzy using what looks like different rhetoric (and with absurdly primitive media technology too). It would be informative to know exactly how and that I suggest requires looking closely at the details of the propaganda.


But had the Axis powers won the number of deaths would have diminished rapidly as the situation stabilized. The Japanese wanted to rule China, but they didn't have any desire to eliminate the Chinese people and culture.

The Nazis were planning to kill hundreds of millions of people. It's not a distinction without a difference. The difference is enormous.

Incidentally, what do you think was going to happen as the Germans conquered China from the West? The Germans and Japanese were destined to come to blows even if they'd destroyed the allies.


as a person coming from Slavic territory (Slovakia), well I am damn happy they failed in their plans


At least when it comes to startups this makes total sense. Work is increasingly both your work and your life. Your friends are increasingly your colleagues.

Traditionally you don't cuss in the work place b/c you have to stay professional - ie. you have to not be emotional about your work. Cussing is a form of injecting emotion into your speech. If you are at the office 12 hours a day with your friends, then the lines get blurred.

Personally I don't like the trend, but to each his own. There are pluses and minuses to each type of workplace


I saw plenty of domesticated elephants in Thailand (and I assume all of South East Asia). Are African elephant some how different when it comes to this?


Those were tamed. Domesticated means selectively bred. Those animals that you saw might have seemed tame, but they are actually pretty dangerous.


I need to open a bank account in China next month - out of curiosity, in what way are they one of the most modern? :)


Not one of the old guard from the socialist era, a generally good reputation / better service, and first to have relatively OK internet banking. (ie. not 'manually reconfigure your windows certificates' like some others used to be)


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: