I went from the age of manual typewriters to IBM Selectrics to typewriters that had a few kilobytes of memory in them, to "word processors" to dot matrix printers, and so on.
I still remember how annoying it was if filling out a form, even with a typewriter that allowed you to backspace and use a correction ribbon. I also don't miss the days of Liquid Paper/Wite-Out. Nor do I miss trying to precisely align the carriage.
Manual typewriters may wind up a novelty, but I'd take a Mac Plus with an Imagewriter II printer any day, just for the ability to backspace, print out a copy when I so chose, correct work, or other things that are taken for granted.
The point of using a typewriter these days is to eliminate the editing the comes with easy deleting. Very, very, very few people actually write a complete novel on a typewriter.
However, there are two advantages to using a typewriter. First, it's unhindered - if you're brainstorming for ideas, the fact you can't delete means you can freeform a bunch of ideas onto the page. They can be eliminated later, but sometimes just getting it out there triggers the creative juices.
The other benefit is on the opposite spectrum - because you can't easily edit, instead of rapidly typing things out at full speed, you type more deliberately - you engage your brain and think through what you're going to type before your fingers get busy on the page. And even then every keypress is deliberate and intentional.
It's not for everyone, I mean it's like coding where you only get one chance to compile a day -you write your code then mentally revise it before submitting it. For some, this makes them a better coder because it's less trial and error and more "let's think it through first". And yes, it's not scalable - a big system is just impossible to understand or comprehend by one person.
I also had people like this - if you took their test, they said you can do it in pen or pencil, but in pencil, what you were given was it - if any mistake was done in grading, tough. If in pen (no liquid paper), it had to be neatly done (no excess scribbles - if you need to work out your plan of attack, that's what the scratch pad was for), then just put down your work and solution. But if the grader made a mistake, you could argue your mark, partial credit, etc. Given the volume of papers that needed to be marked, there was a good chance an error could be made.
It's really a different way of thinking - you work it all out ahead of time somewhere else and then you commit to it on paper.
Yeap. That's where pushing to live production is going to be your brutal tutor.....if you have cognitive biases that are hiding bugs from your psyche, then the system will show you to them (most likely in the most inconvenient time), and you will learn. It's harsh.
And while "not working with a net" will hopefully prevent those massive push to production failures because you tested your code, it won't prevent smaller bugs from getting through.
I mean, for Yahoo, let's say you fixed some bug in the email service. Without QA, you probably test to make sure the webmail still works fine and push it. Yay, service is still up. But a bug in your code hides say, the BCC field. Well, sure, you wrote better quality code - it didn't crash production - but it still had bugs in it, just you didn't notice. Even worse, users probably didn't see it, and those that use it probably assume it was removed on purpose. Because it seems the trendy thing to do all around - little used features start to disappear.
And this can continue on - bugs hiding features people use and users assuming that they were removed on purpose until someone puts their foot down and starts a conversation saying how bad your service is months later with all the features missing. Everyone assumes it was deliberate, even if it was accidental and a small quick fix would bring it back.
That's the thing QA is for - to make sure the system still matches the requirements - features don't go missing unless there was a deliberate change to remove the feature.
SO yeah, perhaps "bugs" went down, maybe even system-crashing criticla bugs. But it's the smaller bugs that may escape detection and that your users simply assume it was removed. And you'll never find out until months or years later when users post something publicly. In the meantime, you can be bleeding users who used a feature and assume it was deliberately gone and have no clue why.
A device released in 2015 with a pricetag of nearly $400 with modern goodies such as 802.11ac still only has 100mbps ethernet?
It's not as shocking as you may think - we were looking at getting a few laptops as loaners when people travel - nice modern Skylake ones with i7 processors. We actually found some decent machines with decent screens and processors and all that. We were just about to place the order when we noticed the Ethernet was... 10/100. This was a non-starter as we required gigabit (what, was this 2000? You used to be able to assume everything had gigabit) - when you're syncing Android code trees that have tens of gigabytes, getting full gigabit speeds is essential for it to take a reasonable amount of time.
At gigabit, we can sync from scratch in about 20 minutes. It would take hours at 10/100.
In the end, we didn't place the order - we're still evaluating a bunch of other laptops to find one that's relatively light and powerful and has gigabit.
I'm reading this as.. "Well, we need to have redundancy, and we're already ponying up this much money, but how can we spend less and still say we're "redundant?" I'm not faulting the datacenters for offering such a service, but the customers should really have a hard look in the mirror.
If you're using ONE datacenter, then yes, you need to take a good hard look at trying to save a few bucks.
But if you've got datacenters geographically spread out, or even have multiple data centers, do you need 99.999% uptime? If you implement your switching and load balancing correctly, then the failure of one datacenter means you shift to another one and go on. Maybe a bit of extra latency, but if you're geographically distributed, then it really doesn't make sense.
Sure, maybe one of your datacenters, your primary one is 99.999% reliable. But your auxiliary ones that serve to provide faster service to local clients, doesn't have to be - at the worst, they then have to wait more milliseconds to hit your primary.
There's plenty of opportunity for non-highly-redundant services as well - perhaps you have a personal website - save a couple of bucks a month to host it on a less reliable hosting service, because you don't necessarily need it up 24/7.
So it's good for operations that are already redundant and operations that can tolerate downtime.
Maybe you have a data center and use Amazon AWS to handle overload. Well, you can downgrade the reliability of the data center knowing you can spin up more AWS instances if the primary goes down. You're already paying for both services, and they can backup the other.
It's basically RAID - redundant array of independent datacenters.
The fact this was even proposed shows how disconnected many are from reality. Feel good legislation will not fix anything and will only impose problems on common folk.
I think it was good it was proposed, because it got people talking.
Too many people are probably thinking "those terrorists use the Internet. I don't use WiFi, or whatever this "tor" thing is. So ban it."
And as we all know from that famous quote, well, they'll take away everyone who isn't X until you're left and no one will defend you.
So getting someone to publicly say what probably a lot of people are thinking means you can debate about it. Because probably a good 20% of the French public were probably thinking it.
Same goes for like Syrian refugees - if someone doesn't say "These people are terrorists! Why are we letting them in" (or even that idiot with the software licensing thing), well, it just seethes and builds and sentiment grows until it's unstoppable.
So having an idiot open their mouth, say something stupid, lets us debate about it.
Yes, that also includes Donald Trump. Because honestly, while what he says is stupid, the fact is, it's forcing debate, and those who harbor those feelings quietly will be freer to speak up and have those debates.
You can't deny people feel that way. And the best way is to address those feelings in public on its merits under the spotlight than in the backroom.
Hollywood's insistence on bundled programming is nothing more than a subsidy for three quarters of the channels out there. Sure we have variety, but the quality of most programming out there is abysmal. If TV subscriptions went a la carte, we would see Hollywood's TV sector immediately shrink overnight. A lot of those BS programs that get bundled into packages wouldn't survive simply because there isn't any revenue for it.
And a lot of good programming goes down the drain.
Right now, a cable channel has two sources of funding - subscribers and ads. Take away subscribers and they move to ads. Guess what? Ads require eyeballs, and eyeballs require lowest-common-denominator - this is QUANTITY of eyeballs, not quality.
So your favorite programming will start having more crap added for "drama" and "suspense" purely because that crap is what eyeballs care about.
The networks are already prepared for this - they've been preparing for years - if you haven't seen cross-network promotion (where a show is advertised on other channels), that's what's going on - they're getting viewers to move to those lesser watched channels.
And good shows are finding funding squeezed - they're forced to integrate lame "drama" style scenes because people don't care about the content of the show.
Hell, Mythbusters suffered from it - because eyeballs don't care about the build, or the science, they just want the explosions and all that.
Ever wonder why PBS content is always so highly rated? Because they don't care for eyeballs. So they're freed up from having to appeal for eyeballs and can produce programming that's informative without having to inject an explosion every 5 minutes, or some whiny person asking for attention or other crap.
Sure, most of the crap programming goes away, but a lot of the good ones do too. And a lot of the bottom of the barrel crap won't go away. Because that stuff brings in eyeballs.
Reality TV is the same - it brings in the eyeballs.
Subscription services like Netflix will prosper, as they don't have to worry about eyeballs - they only need subscribers. And all Netflix does is make sure they target those who would subscribe. But that also means their programming is subject to the whims of who pays for the service...
I want to punch the idiot at Microsoft who decided that "shutdown" means "the user can leave the PC running for hours".
That guy never brought his PC to a LAN gaming session.
Not to mention, not offering a way to do it and then power the PC up afterwards - why can't I go and select "Install updates and restart" when I leave on a Friday night? The PC will install the updates, take as long as it needs, then restart itself so I could remote into it during the weekend if I need to?
Why do I want to shut it down and now make it unavailable?
FYI - there are two ways to shut down the PC without installing updates - use the "shutdown" command, or Ctrl-Alt-Del and select "Shut down" (and not "Install updates and shut down".).
Alternatively, I have Hybrid Sleep enabled, so I just put the PC to sleep and the PC will hibernate and sleep at the same time - if power fails, it resumes from hibernate. If not, it wakes up from sleep.
No, but there's now a lot of cheap Chinese test equipment and etc available. No, it's not as good as some old HP you manage to find. But unless you're doing really high precision stuff, that doesn't matter all that much. You can now get a servicable electronics lab with a reflow oven, rework station, DSO, bench multimeter and etc, all brand new for not all that much money.
While maybe not as good as a modern Agilent, there are several Chinese test equipment companies that produce high quality gear that often rival Agilent and others in price, performance and feature est. Especially on the low end of the scale - brands like Rigol and Siglent produce extremely feature-packed hardware that's well within the hobbyist price range and perform just as well as the pro hardware.
Hell, the $500 and under range for an oscilloscope gets more and more features including intensity graded displays, 200+MHz bandwidth (1Gsps and up), 4 channels, and lots more features, 10,000+ updates/sec, etc.
Buying used test equipment is basically buying for nostalgia or for being able to get an HP or Agilent (or Keysight) gear that probably performs less for more money.
Weren't the RIAA/MPAA just telling us last year how the majority of Internet traffic was people torrenting (and assumedly pirating media)?
Now the figures say the fast amount of usage is people consuming media legally. Guess pirating isn't the big problem they said it was.
Well, that was a few years ago. In the meantime, a bunch of legit streaming services popped up - Netflix, Hulu, HBO, etc. etc. etc.
In fact, over the past 5 or so years, the amount of traffic Netflix consumes has grown and overtaken BitTorrent as the main downstream traffic (BitTorrent is still king on upstream). The only time Netflix is dethroned are the few days Apple releases a massive update (OS X or iOS) and pretty much overwhelms the Internet for a couple of days.
Basically, what has happened was we proved the assertion that people mostly pirate because they can't get what they want legally. Well, the rise of iTunes and other music retailers, digital downloads of TV shows and movies, streaming services like Netflix and HBO, music streaming services, pretty much goes to show that really, a good chunk of piracy was caused by the lack of legal options. (Heck, we knew iTunes did that - would people pirate music or would they buy it? The rise of iTunes' supremacy in selling music showed if you give them a consistent high quality source with little money, people will buy it over free).
Hell, even YouTube's got decent quality content up there as well.
Now if the rest of the world would get off their ass, look what happened in the US, and follow suit with providing legal services.
And yes, the remaining 30% is mostly BitTorrent. But that's a huge shift from when BitTorrent was the massive user of bandwidth by far.
This is because of the licence: it turns out that corporations like Apple are more willing to provide developer resources for this open source project if the licence isn't copyleft.
That's not really true, Apple contributed to GCC for years before LLVM. The problem was that Apple wanted features, and GCC wouldn't allow those features to be built. So finally Apple just gave up and built their own.
This is the rule of running an open source project (and Linus does a really good job of it): give users what they want, or the users will leave.
True, but Apple could also see the writing on the wall with the GPLv3 and what that could mean to their use of the compiler. Which is also why they poured a lot of effort into LLVM and wrote clang. This effort dated way back too - the earliest versions of OS X that started coming out with LLVM as an option was around the 10.4 era.
A lot of companies saw what the GPLv3 was bringing to the table, and they didn't like it, so they moved on. Some, like Apple, realized they could stick around and fight with GCC and GPLv3, or work on an alternative.
GCC is deliberately obtuse as well - Apple wanted a nice front end to help parse and recompile code in real time, and GCC is intentionally twisty to prevent that (and if you want to write a parser for code, why not reuse what the compiler actually uses?). LLVM is more modular and makes it easier to integrate with an IDE
And in the end, I think having the diversity we do in compilers is refreshing - even if you hate LLVM with a passion, at least it's also brought forth development on GCC, which seems to have a history of stalling in development before someone else decides to fork it, revamp things, and have the fork become the official GCC.
FYI - the very last checkin to GCC by Apple was related to Grand Central Dispatch to the Obj-C compiler - basically about blocks.
Other than rounded corners, what exactly is there in the design patent that Apple asserted?
Well, it was a rounded screen, with a grid of icons. Below that grid was a static set of icons. The upper grid of icons could be swiped to move from "page" to "page" while the lower static set stayed the same.
That was the gist of it. And no stock Android OS had that - the "static grid of icons" only applied to the home screen, but that was fixed by having stuff like clocks and widgets there, so it wasn't a grid of icons.
For a long time, when you went to the app launcher on Android, it was a scrolling grid of icons, which also meant it didn't violate the patent. Either way, the app launcher does not have a static grid of icons, so at no point on a stock Android build was the patent violated.
Ironically, if you wrote an app that behaved like an iPhone, you would be safe as well, because your app does not have "rounded corner screen".
The issue was that TouchWiz itself in the early days was a grid of icons with a static grid underneath it, and it was basically working just like the iPhone, even the dots representing pages were similar (Samsung attempted to change it by putting a page number inside the dot).
Development of peripheral hardware by hobbyists, for one. Windows already requires all kernel-mode drivers to be digitally signed with a certificate issued by a CA that Microsoft trusts. And in the run up to the release of Windows 10, Microsoft has announced that Windows will soon require drivers to be signed with an EV certificate, which only an established company can obtain. No, "Test Mode" doesn't help a hobbyist who intends to actually sell the hardware to other hobbyists at low volume.
Reboot into recovery mode, Troubleshoot, Advanced Options, hit F7 or 7 (disable driver verification).
Worked on 64 bit Windows 8 and Windows 10 - I had to install ADB drivers for some dev hardware I was using, and those were not signed. Heck, I didn't use our internal drivers, I used the "universal ADB installer" package that installs drivers for all Android devices. (I did this because I couldn't get our internal drivers to install - windows refused saying no drivers were found). The universal drivers told me I had to enter the recovery mode menu to disable driver verification.
Sure when I installed it a big scary popup saying there was no validation information was present.
But no, I didn't get any "Test mode' notice or anything on the system afterwards - it looked pretty much the same to me.
Get up earlier instead of staying up too late writing silly scripts.
How does getting up earlier deal with issues of the train being late? If the 7:00 AM train consistently comes at 7:10AM, waking up 10 minutes earlier does nothing.
Nor does it help if the train usually comes in at 7:00AM, but sometimes comes in at 7:10AM.
Neither does waking up early help if the train (let's say it departs at 7:00AM and arrives at 8:00AM) consistently comes at 7:00AM and routinely gets delayed to 8:10AM.
The only time it might help is if there's a 6:00 AM train and an 8:00 AM train, and he could choose between two or three of them. Then he'd need to figure out which one would be the best one that's not late. Which means he'd still need the data to analyze to figure which one is consistently more on time.
See Via Rail limiting the GET requests in 3... 2... 1...
Or fixing their database to delete rows older than 3 days.
Then again, sometimes the right thing does happen - the company involved makes the data available and makes everyone happy. I mean, if the train is delayed because of other rail traffic, then maybe if the government comes asking about on-time rates being so poor, they can show them the data.
Samsung Mobile and Samsung IC are different companies (but under one mothership mind you). Apple wouldn't dare piss off the #1 producer of Flash chips in the world
It goes both ways, actually. Because Samsung doesn't want to piss off a major component purchaser either.
Because parts have a long lead time, and if you're ramped up to produce 10M flash chips a month and you piss off Apple, that's 10M flash chips that's going to be sitting in your warehouse. And that's not a good thing because it means you have excess capacity (bad on a fab), and excess inventory which means you have to sell your parts at a discount. And a company like Apple probably have enough brokers in the chain that they will purchase all of those parts at the new discounted price.
In today's world, there's no such thing as "enemies" or "friends". Relationships between companies are more like "it's complicated". Samsung, Apple, Microsoft, Google, and many other companies need, rely, depend, purchase, supply, support and do all sorts of other things with each other. Hell, Apple and Google? They're probably just as much working together as they are competing against each other.
Also, there's a ton more of them these days and they're sending and receiving a massive amount of data, which necessitated switching from the old analog AMPS network to increasingly complex digital networks and opening up much higher frequency bands which don't penetrate as well.
Exactly.
10 years ago, a handset would have maybe 3, or if you were lucky, 4 bands. Most of which were reasonably resonant with one another (850, 900, 1800, 1900 MHz) so you could invest in basically one big antenna that can be tuned across the band.
Nowadays, besides those 4 bands, 3G and 4G services have another set of bands - often a dozen or more, and the frequencies aren't such a nice resonant set, so you have many more antennas. Then add in the WiFi and Bluetooth, GPS and other antennas, and there's a lot of RF going on.
There's just a lot more "going on" in a modern cellphone that really goes and degrades the RF environment - so it's really no wonder they perform worse. And there's limited space anyhow - SAR limits and body-shielding limit the place you can put antennas.
Avionics were excluded from the initial lead-free requirement. And even if they aren't now, unless the plane was literally brand new, it will be using leaded solder because chances are the equipment predates the exclusion removal, if not RoHS.
Of course, piston-engine propeller planes still use LEADED fuel.
Options exist, but pilots don't seem to care.
Options exist, but they're not cheap. When an engine replacement costs over $30K, this is a lot of money (most pilots are middle income - and spending even $5k to replace a part can be expensive).
And it's changing. First. leaded fuel is extremely hard to get - there's only ONE supplier of tetraethyl lead, and they're in the UK. Next, there's only a few refineries around the world who can handle leaded fuel - it requires extreme cleaning and special handling. Finally, the demand is low - in one day, a US refinery can produce an entire's year worth of avgas for North America.
So the FAA and many other groups, are studying various unleaded fuels for compatibility - the goal is a fuel that would be usable in the entire fleet with zero modifications - i.e., all a pilot has to do is request avgas and it doesn't matter if it's leaded or unleaded. I believe in 2016 the first candidates will be selected for more extensive fleet trials.
Unleaded fuel is coming, the industry has been preparing for it for years and doing the necessary R&D work to actually produce unleaded avgas that is now being tested. In a few years, hopefully there will be public trials of it. And unleaded avgas has advantages if it means more refineries can produce it - cheaper fuel! Because no special lead handling equipment is required, no special cleaning requirements when switching back to regular unleaded production, and no reliance on sole-source manufacturer making the only supply of tetraethyl lead.
In the meantime, diesel, or more specifically, kerosene is an option that's gaining ground - hampered initially by the bankruptcy of one of the pioneering companies, all major engine manufacturers, and many others are selling diesel engines that take Jet-A.
The benefits of Jet-A is that it's more widely available - so if your small plane can take Jet-A, you can find it practically everywhere (because it's what the jets use). In Canada and the Arctic, this is important because Avgas is harder to get, so being able to stock just one fuel is beneficial.
Oh, and cracked solder joints are a way of life. Cracked solder joints, worn insulation are just facts of life. And even RoHS has nothing to do with it since it only applies to new equipment (and avionics was excluded in the beginning). So unless the equipment was literally brand new, it would be using leaded solder.
Or, just haul a big bolt cutter into the locker room in a duffel bag and go "snip, snip, snip." That's usually what the local thieves do. It's also what I've seen a lot of companies do with padlocks on remote utility cabinets: why worry about keys at the end of a 150-mile trip when you can relock it for about $5?
yeah, but that leaves evidence.
This method does not leave evidence that the lock was opened. Someone could easily open the lock, take something, and relock it without the owner thinking anything was up. A bolt cutter would leave a broken lock which means the owner knows he was robbed.
That's why this is an important hack - because insurance often won't pay if there's no physical evidence of a break-in. Think of it - you could enter your neighbour's locked shed and steam their power tools, relock the shed, and the owner wouldn't know about it until they open the shed again. It could easily be months before the theft is discovered.
There've been lots of studies finding "psychological differences between the sexes". But when you look into them the statistical correlations are usually terribly weak, barely above statistical significance. And you have to question how much you can trust them anyway. Remember that metastudy that showed that half of all psychological studies can't be reproduced? I downloaded their study data. Every topic related to gender differences was in the "couldn't be reproduced" category. Now, of course that's a tiny fraction of all research that they attempted to reproduce. There surely are psychological differences, even ones that aren't pure upbringing/society related. But its important not to overplay the amount or degree of them.
I'm not surprised, really.
Everyone basically starts out a female from conception - the X chromosome asserts itself during the first 5-6 weeks before the Y chromosome (only in males) starts to activate, at which point the SRY gene activates that inhibits certain genes in the X chromosome and to start turning you male. The developing ovaries descend and become the testes, the clitoris transforms into the penis.
And with that in mind, it should be obvious why there are trans-gendered or bisexual people as well - a fallout of the natural process of gestation and sometimes, things don't always go completely as planned.
Life is complicated. And differences really are fairly minor.
Since the randomness or "fairness" of dice is completely dependent on how accurately they're made and balanced, which is pretty hard to do for a manufactured product (there's always a slight bit of variation), wouldn't it make more sense to just dump dice altogether, and use a computer? You could even have an Arduino or other microcontroller-powered handheld device, using a random number generator to "roll" a number when a button is pressed.
Actually, there are dice that are made to extremely tight precision - they're used in casinos, and they're exceptionally fair (by law). In fact, the pips are filled in with plastic to prevent the sides from actually weighing differently (i.e., the "1" would be heavier than the "6", throwing off the center of mass, so the pips are filled). They're also ground down to be extremely uniform, and have a built-in wear indicator to show they should be replaced (the die is hard-edged, not rounded. When the points I the corner stop being sharp, it means it's time to replace them).
They can be purchased at any good board game store.
And computer random numbers is a hard field - computers just aren't good at randomness. It's why we have very elaborate circuits to do "cryptographically secure" random numbers. It's very hard to do it in software (ask the OpenSSL team who has to work with the possibility that there's no hardware RNG). And then there's the kernel based RNG which try to use system entropy to guarantee randomness.
And even with all that, there's a lot of processing that goes on - including whiteners (which take natural biases and spreads them out so it's more even) and plenty of other hardware.
All this just to get close to truly random numbers.
I've been doing the contracting thing, where the client hires me to extend their on-site team. Recruitment agencies call me, I have an intake over the phone with the client and then meet them face-to-face. So I don't recognize the things mentioned like "fixed-price contract", I just have an hourly rate. You can spend anything from a couple of months to a couple of years working for the same client.
In other words, you're contracting involves a "body for hire", which is a perfectly reasonable way to do contracting.
Another form of contracting is a traditional contract - you have to do X and produce Y deliverables in preferably a Z timeframe, which is more project oriented Traditional engineering companies typically do these - customer needs a product that does XYZ and with deliverables and milestones. Which can involve freelance work as well - you need to produce a document, say.
In these, there are "fixed price" contracts where you do the work and get $X for it. Then there's "Time and Materials" where you're compensated for time and expenses to get things done. The former is riskier on the company so they usually have higher margins (if the company thinks they can do it in 1 month, they'd bid 3 months for contingency), while the latter is lower risk, and thus lower margins.
If you're extending teams, that's just one form of work, but freelancing typically involves completed parcels of work.
So apparently there was some sort of software/firmware that restricted the hardware preventing it from utilizing everything available? Why develop for this shit in the first place?
I don't know, maybe the billions of dollars in revenue that comes along with developing AAA titles for consoles?
Exactly. The "PC Master Race" seems to forget that piracy has really killed games on PC, at least the AAA titles. Indies are huge on PC (as they are on mobile), so that's all left.
Most AAA gave development money is headed towards consoles where the DRM keeps piracy low (under 10% typically) and there's a good chance to make back the money. So consoles get the first release to make back the development money, then after everyone's made their money, they port it to PC with the hopes the PC port pays for the porting effort. To help with this, they reduce the price (out of necessity since the game has been out 6 months to a year already).
The few PC games that get same time releases generally are online games where the server can enforce DRM (your Call of Duty or Battlefield games). Very rarely do you get something like a Fallout 4 where there's a PC release at the same time as console with no online component.
Heck, while there are a few stubbornly PC only developers, many former PC only developers branched out to consoles - Activision-Blizzard,and Valve being notable ones.
It's called follow the money. Otherwise why else would developers subject themselves to content approvals and all sorts of other things when they can release on PC for free.
This corporate culture of "store everything" needs to go away. At least in the past, we had storage limitations that made this infeasible. But dammit, as a software engineer, if the system requirements tell me to store something that would be bad if it was released, then I'm not storing it unless there is a damned good reason AND it is well encrypted.
Not to mention with child privacy laws, this sort of thing has to be well kept.
For an example - take a look at Nintendo - we lambast them for "friend codes" and awkward DRM. But you realize that the intersection of various child privacy laws worldwide mean Nintendo basically cannot ask for any information - no name, no email address or anything.
And by doing this, they just have to associate a hardware serial number (anonymous!) with purchases (also anonymous!). If you transfer to another console, it's moving the purchases to a new serial number.
But this means you also cannot create an account and re-download stuff (because Nintendo doesn't know who you are), and if your console breaks, you have to bring it back to Nintendo (so they can move the stuff to a new serial number).
Sure today you can create a "Nintendo Network" account that tries to associate your purchases with an ID, but that's optional and you still suffer the same limitations.
it's the only way Nintendo could guarantee even if they were hacked, that there was no private data to take, and legally they couldn't collect any information.
The point of using a typewriter these days is to eliminate the editing the comes with easy deleting. Very, very, very few people actually write a complete novel on a typewriter.
However, there are two advantages to using a typewriter. First, it's unhindered - if you're brainstorming for ideas, the fact you can't delete means you can freeform a bunch of ideas onto the page. They can be eliminated later, but sometimes just getting it out there triggers the creative juices.
The other benefit is on the opposite spectrum - because you can't easily edit, instead of rapidly typing things out at full speed, you type more deliberately - you engage your brain and think through what you're going to type before your fingers get busy on the page. And even then every keypress is deliberate and intentional.
It's not for everyone, I mean it's like coding where you only get one chance to compile a day -you write your code then mentally revise it before submitting it. For some, this makes them a better coder because it's less trial and error and more "let's think it through first". And yes, it's not scalable - a big system is just impossible to understand or comprehend by one person.
I also had people like this - if you took their test, they said you can do it in pen or pencil, but in pencil, what you were given was it - if any mistake was done in grading, tough. If in pen (no liquid paper), it had to be neatly done (no excess scribbles - if you need to work out your plan of attack, that's what the scratch pad was for), then just put down your work and solution. But if the grader made a mistake, you could argue your mark, partial credit, etc. Given the volume of papers that needed to be marked, there was a good chance an error could be made.
It's really a different way of thinking - you work it all out ahead of time somewhere else and then you commit to it on paper.
And while "not working with a net" will hopefully prevent those massive push to production failures because you tested your code, it won't prevent smaller bugs from getting through.
I mean, for Yahoo, let's say you fixed some bug in the email service. Without QA, you probably test to make sure the webmail still works fine and push it. Yay, service is still up. But a bug in your code hides say, the BCC field. Well, sure, you wrote better quality code - it didn't crash production - but it still had bugs in it, just you didn't notice. Even worse, users probably didn't see it, and those that use it probably assume it was removed on purpose. Because it seems the trendy thing to do all around - little used features start to disappear.
And this can continue on - bugs hiding features people use and users assuming that they were removed on purpose until someone puts their foot down and starts a conversation saying how bad your service is months later with all the features missing. Everyone assumes it was deliberate, even if it was accidental and a small quick fix would bring it back.
That's the thing QA is for - to make sure the system still matches the requirements - features don't go missing unless there was a deliberate change to remove the feature.
SO yeah, perhaps "bugs" went down, maybe even system-crashing criticla bugs. But it's the smaller bugs that may escape detection and that your users simply assume it was removed. And you'll never find out until months or years later when users post something publicly. In the meantime, you can be bleeding users who used a feature and assume it was deliberately gone and have no clue why.
It's not as shocking as you may think - we were looking at getting a few laptops as loaners when people travel - nice modern Skylake ones with i7 processors. We actually found some decent machines with decent screens and processors and all that. We were just about to place the order when we noticed the Ethernet was... 10/100. This was a non-starter as we required gigabit (what, was this 2000? You used to be able to assume everything had gigabit) - when you're syncing Android code trees that have tens of gigabytes, getting full gigabit speeds is essential for it to take a reasonable amount of time.
At gigabit, we can sync from scratch in about 20 minutes. It would take hours at 10/100.
In the end, we didn't place the order - we're still evaluating a bunch of other laptops to find one that's relatively light and powerful and has gigabit.
If you're using ONE datacenter, then yes, you need to take a good hard look at trying to save a few bucks.
But if you've got datacenters geographically spread out, or even have multiple data centers, do you need 99.999% uptime? If you implement your switching and load balancing correctly, then the failure of one datacenter means you shift to another one and go on. Maybe a bit of extra latency, but if you're geographically distributed, then it really doesn't make sense.
Sure, maybe one of your datacenters, your primary one is 99.999% reliable. But your auxiliary ones that serve to provide faster service to local clients, doesn't have to be - at the worst, they then have to wait more milliseconds to hit your primary.
There's plenty of opportunity for non-highly-redundant services as well - perhaps you have a personal website - save a couple of bucks a month to host it on a less reliable hosting service, because you don't necessarily need it up 24/7.
So it's good for operations that are already redundant and operations that can tolerate downtime.
Maybe you have a data center and use Amazon AWS to handle overload. Well, you can downgrade the reliability of the data center knowing you can spin up more AWS instances if the primary goes down. You're already paying for both services, and they can backup the other.
It's basically RAID - redundant array of independent datacenters.
I think it was good it was proposed, because it got people talking.
Too many people are probably thinking "those terrorists use the Internet. I don't use WiFi, or whatever this "tor" thing is. So ban it."
And as we all know from that famous quote, well, they'll take away everyone who isn't X until you're left and no one will defend you.
So getting someone to publicly say what probably a lot of people are thinking means you can debate about it. Because probably a good 20% of the French public were probably thinking it.
Same goes for like Syrian refugees - if someone doesn't say "These people are terrorists! Why are we letting them in" (or even that idiot with the software licensing thing), well, it just seethes and builds and sentiment grows until it's unstoppable.
So having an idiot open their mouth, say something stupid, lets us debate about it.
Yes, that also includes Donald Trump. Because honestly, while what he says is stupid, the fact is, it's forcing debate, and those who harbor those feelings quietly will be freer to speak up and have those debates.
You can't deny people feel that way. And the best way is to address those feelings in public on its merits under the spotlight than in the backroom.
And a lot of good programming goes down the drain.
Right now, a cable channel has two sources of funding - subscribers and ads. Take away subscribers and they move to ads. Guess what? Ads require eyeballs, and eyeballs require lowest-common-denominator - this is QUANTITY of eyeballs, not quality.
So your favorite programming will start having more crap added for "drama" and "suspense" purely because that crap is what eyeballs care about.
The networks are already prepared for this - they've been preparing for years - if you haven't seen cross-network promotion (where a show is advertised on other channels), that's what's going on - they're getting viewers to move to those lesser watched channels.
And good shows are finding funding squeezed - they're forced to integrate lame "drama" style scenes because people don't care about the content of the show.
Hell, Mythbusters suffered from it - because eyeballs don't care about the build, or the science, they just want the explosions and all that.
Ever wonder why PBS content is always so highly rated? Because they don't care for eyeballs. So they're freed up from having to appeal for eyeballs and can produce programming that's informative without having to inject an explosion every 5 minutes, or some whiny person asking for attention or other crap.
Sure, most of the crap programming goes away, but a lot of the good ones do too. And a lot of the bottom of the barrel crap won't go away. Because that stuff brings in eyeballs.
Reality TV is the same - it brings in the eyeballs.
Subscription services like Netflix will prosper, as they don't have to worry about eyeballs - they only need subscribers. And all Netflix does is make sure they target those who would subscribe. But that also means their programming is subject to the whims of who pays for the service...
Not to mention, not offering a way to do it and then power the PC up afterwards - why can't I go and select "Install updates and restart" when I leave on a Friday night? The PC will install the updates, take as long as it needs, then restart itself so I could remote into it during the weekend if I need to?
Why do I want to shut it down and now make it unavailable?
FYI - there are two ways to shut down the PC without installing updates - use the "shutdown" command, or Ctrl-Alt-Del and select "Shut down" (and not "Install updates and shut down".).
Alternatively, I have Hybrid Sleep enabled, so I just put the PC to sleep and the PC will hibernate and sleep at the same time - if power fails, it resumes from hibernate. If not, it wakes up from sleep.
While maybe not as good as a modern Agilent, there are several Chinese test equipment companies that produce high quality gear that often rival Agilent and others in price, performance and feature est. Especially on the low end of the scale - brands like Rigol and Siglent produce extremely feature-packed hardware that's well within the hobbyist price range and perform just as well as the pro hardware.
Hell, the $500 and under range for an oscilloscope gets more and more features including intensity graded displays, 200+MHz bandwidth (1Gsps and up), 4 channels, and lots more features, 10,000+ updates/sec, etc.
Buying used test equipment is basically buying for nostalgia or for being able to get an HP or Agilent (or Keysight) gear that probably performs less for more money.
Well, that was a few years ago. In the meantime, a bunch of legit streaming services popped up - Netflix, Hulu, HBO, etc. etc. etc.
In fact, over the past 5 or so years, the amount of traffic Netflix consumes has grown and overtaken BitTorrent as the main downstream traffic (BitTorrent is still king on upstream). The only time Netflix is dethroned are the few days Apple releases a massive update (OS X or iOS) and pretty much overwhelms the Internet for a couple of days.
Basically, what has happened was we proved the assertion that people mostly pirate because they can't get what they want legally. Well, the rise of iTunes and other music retailers, digital downloads of TV shows and movies, streaming services like Netflix and HBO, music streaming services, pretty much goes to show that really, a good chunk of piracy was caused by the lack of legal options. (Heck, we knew iTunes did that - would people pirate music or would they buy it? The rise of iTunes' supremacy in selling music showed if you give them a consistent high quality source with little money, people will buy it over free).
Hell, even YouTube's got decent quality content up there as well.
Now if the rest of the world would get off their ass, look what happened in the US, and follow suit with providing legal services.
And yes, the remaining 30% is mostly BitTorrent. But that's a huge shift from when BitTorrent was the massive user of bandwidth by far.
True, but Apple could also see the writing on the wall with the GPLv3 and what that could mean to their use of the compiler. Which is also why they poured a lot of effort into LLVM and wrote clang. This effort dated way back too - the earliest versions of OS X that started coming out with LLVM as an option was around the 10.4 era.
A lot of companies saw what the GPLv3 was bringing to the table, and they didn't like it, so they moved on. Some, like Apple, realized they could stick around and fight with GCC and GPLv3, or work on an alternative.
GCC is deliberately obtuse as well - Apple wanted a nice front end to help parse and recompile code in real time, and GCC is intentionally twisty to prevent that (and if you want to write a parser for code, why not reuse what the compiler actually uses?). LLVM is more modular and makes it easier to integrate with an IDE
And in the end, I think having the diversity we do in compilers is refreshing - even if you hate LLVM with a passion, at least it's also brought forth development on GCC, which seems to have a history of stalling in development before someone else decides to fork it, revamp things, and have the fork become the official GCC.
FYI - the very last checkin to GCC by Apple was related to Grand Central Dispatch to the Obj-C compiler - basically about blocks.
Well, it was a rounded screen, with a grid of icons. Below that grid was a static set of icons. The upper grid of icons could be swiped to move from "page" to "page" while the lower static set stayed the same.
That was the gist of it. And no stock Android OS had that - the "static grid of icons" only applied to the home screen, but that was fixed by having stuff like clocks and widgets there, so it wasn't a grid of icons.
For a long time, when you went to the app launcher on Android, it was a scrolling grid of icons, which also meant it didn't violate the patent. Either way, the app launcher does not have a static grid of icons, so at no point on a stock Android build was the patent violated.
Ironically, if you wrote an app that behaved like an iPhone, you would be safe as well, because your app does not have "rounded corner screen".
The issue was that TouchWiz itself in the early days was a grid of icons with a static grid underneath it, and it was basically working just like the iPhone, even the dots representing pages were similar (Samsung attempted to change it by putting a page number inside the dot).
Reboot into recovery mode, Troubleshoot, Advanced Options, hit F7 or 7 (disable driver verification).
Worked on 64 bit Windows 8 and Windows 10 - I had to install ADB drivers for some dev hardware I was using, and those were not signed. Heck, I didn't use our internal drivers, I used the "universal ADB installer" package that installs drivers for all Android devices. (I did this because I couldn't get our internal drivers to install - windows refused saying no drivers were found). The universal drivers told me I had to enter the recovery mode menu to disable driver verification.
Sure when I installed it a big scary popup saying there was no validation information was present.
But no, I didn't get any "Test mode' notice or anything on the system afterwards - it looked pretty much the same to me.
How does getting up earlier deal with issues of the train being late? If the 7:00 AM train consistently comes at 7:10AM, waking up 10 minutes earlier does nothing.
Nor does it help if the train usually comes in at 7:00AM, but sometimes comes in at 7:10AM.
Neither does waking up early help if the train (let's say it departs at 7:00AM and arrives at 8:00AM) consistently comes at 7:00AM and routinely gets delayed to 8:10AM.
The only time it might help is if there's a 6:00 AM train and an 8:00 AM train, and he could choose between two or three of them. Then he'd need to figure out which one would be the best one that's not late. Which means he'd still need the data to analyze to figure which one is consistently more on time.
Or fixing their database to delete rows older than 3 days.
Then again, sometimes the right thing does happen - the company involved makes the data available and makes everyone happy. I mean, if the train is delayed because of other rail traffic, then maybe if the government comes asking about on-time rates being so poor, they can show them the data.
It goes both ways, actually. Because Samsung doesn't want to piss off a major component purchaser either.
Because parts have a long lead time, and if you're ramped up to produce 10M flash chips a month and you piss off Apple, that's 10M flash chips that's going to be sitting in your warehouse. And that's not a good thing because it means you have excess capacity (bad on a fab), and excess inventory which means you have to sell your parts at a discount. And a company like Apple probably have enough brokers in the chain that they will purchase all of those parts at the new discounted price.
In today's world, there's no such thing as "enemies" or "friends". Relationships between companies are more like "it's complicated". Samsung, Apple, Microsoft, Google, and many other companies need, rely, depend, purchase, supply, support and do all sorts of other things with each other. Hell, Apple and Google? They're probably just as much working together as they are competing against each other.
You already can do that. In fact, the app has the seventh largest Android user base, beating companies like Xiaomi and Sony.
Exactly.
10 years ago, a handset would have maybe 3, or if you were lucky, 4 bands. Most of which were reasonably resonant with one another (850, 900, 1800, 1900 MHz) so you could invest in basically one big antenna that can be tuned across the band.
Nowadays, besides those 4 bands, 3G and 4G services have another set of bands - often a dozen or more, and the frequencies aren't such a nice resonant set, so you have many more antennas. Then add in the WiFi and Bluetooth, GPS and other antennas, and there's a lot of RF going on.
There's just a lot more "going on" in a modern cellphone that really goes and degrades the RF environment - so it's really no wonder they perform worse. And there's limited space anyhow - SAR limits and body-shielding limit the place you can put antennas.
Avionics were excluded from the initial lead-free requirement. And even if they aren't now, unless the plane was literally brand new, it will be using leaded solder because chances are the equipment predates the exclusion removal, if not RoHS.
Options exist, but they're not cheap. When an engine replacement costs over $30K, this is a lot of money (most pilots are middle income - and spending even $5k to replace a part can be expensive).
And it's changing. First. leaded fuel is extremely hard to get - there's only ONE supplier of tetraethyl lead, and they're in the UK. Next, there's only a few refineries around the world who can handle leaded fuel - it requires extreme cleaning and special handling. Finally, the demand is low - in one day, a US refinery can produce an entire's year worth of avgas for North America.
So the FAA and many other groups, are studying various unleaded fuels for compatibility - the goal is a fuel that would be usable in the entire fleet with zero modifications - i.e., all a pilot has to do is request avgas and it doesn't matter if it's leaded or unleaded. I believe in 2016 the first candidates will be selected for more extensive fleet trials.
Unleaded fuel is coming, the industry has been preparing for it for years and doing the necessary R&D work to actually produce unleaded avgas that is now being tested. In a few years, hopefully there will be public trials of it. And unleaded avgas has advantages if it means more refineries can produce it - cheaper fuel! Because no special lead handling equipment is required, no special cleaning requirements when switching back to regular unleaded production, and no reliance on sole-source manufacturer making the only supply of tetraethyl lead.
In the meantime, diesel, or more specifically, kerosene is an option that's gaining ground - hampered initially by the bankruptcy of one of the pioneering companies, all major engine manufacturers, and many others are selling diesel engines that take Jet-A.
The benefits of Jet-A is that it's more widely available - so if your small plane can take Jet-A, you can find it practically everywhere (because it's what the jets use). In Canada and the Arctic, this is important because Avgas is harder to get, so being able to stock just one fuel is beneficial.
Oh, and cracked solder joints are a way of life. Cracked solder joints, worn insulation are just facts of life. And even RoHS has nothing to do with it since it only applies to new equipment (and avionics was excluded in the beginning). So unless the equipment was literally brand new, it would be using leaded solder.
yeah, but that leaves evidence.
This method does not leave evidence that the lock was opened. Someone could easily open the lock, take something, and relock it without the owner thinking anything was up. A bolt cutter would leave a broken lock which means the owner knows he was robbed.
That's why this is an important hack - because insurance often won't pay if there's no physical evidence of a break-in. Think of it - you could enter your neighbour's locked shed and steam their power tools, relock the shed, and the owner wouldn't know about it until they open the shed again. It could easily be months before the theft is discovered.
I'm not surprised, really.
Everyone basically starts out a female from conception - the X chromosome asserts itself during the first 5-6 weeks before the Y chromosome (only in males) starts to activate, at which point the SRY gene activates that inhibits certain genes in the X chromosome and to start turning you male. The developing ovaries descend and become the testes, the clitoris transforms into the penis.
And with that in mind, it should be obvious why there are trans-gendered or bisexual people as well - a fallout of the natural process of gestation and sometimes, things don't always go completely as planned.
Life is complicated. And differences really are fairly minor.
Actually, there are dice that are made to extremely tight precision - they're used in casinos, and they're exceptionally fair (by law). In fact, the pips are filled in with plastic to prevent the sides from actually weighing differently (i.e., the "1" would be heavier than the "6", throwing off the center of mass, so the pips are filled). They're also ground down to be extremely uniform, and have a built-in wear indicator to show they should be replaced (the die is hard-edged, not rounded. When the points I the corner stop being sharp, it means it's time to replace them).
They can be purchased at any good board game store.
And computer random numbers is a hard field - computers just aren't good at randomness. It's why we have very elaborate circuits to do "cryptographically secure" random numbers. It's very hard to do it in software (ask the OpenSSL team who has to work with the possibility that there's no hardware RNG). And then there's the kernel based RNG which try to use system entropy to guarantee randomness.
And even with all that, there's a lot of processing that goes on - including whiteners (which take natural biases and spreads them out so it's more even) and plenty of other hardware.
All this just to get close to truly random numbers.
In other words, you're contracting involves a "body for hire", which is a perfectly reasonable way to do contracting.
Another form of contracting is a traditional contract - you have to do X and produce Y deliverables in preferably a Z timeframe, which is more project oriented Traditional engineering companies typically do these - customer needs a product that does XYZ and with deliverables and milestones. Which can involve freelance work as well - you need to produce a document, say.
In these, there are "fixed price" contracts where you do the work and get $X for it. Then there's "Time and Materials" where you're compensated for time and expenses to get things done. The former is riskier on the company so they usually have higher margins (if the company thinks they can do it in 1 month, they'd bid 3 months for contingency), while the latter is lower risk, and thus lower margins.
If you're extending teams, that's just one form of work, but freelancing typically involves completed parcels of work.
Exactly. The "PC Master Race" seems to forget that piracy has really killed games on PC, at least the AAA titles. Indies are huge on PC (as they are on mobile), so that's all left.
Most AAA gave development money is headed towards consoles where the DRM keeps piracy low (under 10% typically) and there's a good chance to make back the money. So consoles get the first release to make back the development money, then after everyone's made their money, they port it to PC with the hopes the PC port pays for the porting effort. To help with this, they reduce the price (out of necessity since the game has been out 6 months to a year already).
The few PC games that get same time releases generally are online games where the server can enforce DRM (your Call of Duty or Battlefield games). Very rarely do you get something like a Fallout 4 where there's a PC release at the same time as console with no online component.
Heck, while there are a few stubbornly PC only developers, many former PC only developers branched out to consoles - Activision-Blizzard,and Valve being notable ones.
It's called follow the money. Otherwise why else would developers subject themselves to content approvals and all sorts of other things when they can release on PC for free.
Not to mention with child privacy laws, this sort of thing has to be well kept.
For an example - take a look at Nintendo - we lambast them for "friend codes" and awkward DRM. But you realize that the intersection of various child privacy laws worldwide mean Nintendo basically cannot ask for any information - no name, no email address or anything.
And by doing this, they just have to associate a hardware serial number (anonymous!) with purchases (also anonymous!). If you transfer to another console, it's moving the purchases to a new serial number.
But this means you also cannot create an account and re-download stuff (because Nintendo doesn't know who you are), and if your console breaks, you have to bring it back to Nintendo (so they can move the stuff to a new serial number).
Sure today you can create a "Nintendo Network" account that tries to associate your purchases with an ID, but that's optional and you still suffer the same limitations.
it's the only way Nintendo could guarantee even if they were hacked, that there was no private data to take, and legally they couldn't collect any information.