But what if we forget the verification like below?
var stockCode:String? = findStockCode("Facebook")
let text = "Stock Code - "
let message = text + stockCode! // runtime error
There will be no compile-time error. The compiler assumes that the optional contains a value as forced unwrapping is used. When you run the app, a runtime error is thrown with the following message:
fatal error: Can’t unwrap Optional.None
Huh?!! Then what’s the point?
We’re far enough along in 2018 that a language could have come with forced linting. The compile-time error should be, “Use of a force unwrap on an optional without a nil check is not allowed.”
I’ll admit I’m glad Swift exists. I thought it’d be fun to research SpriteKit and hack up a quick 2D game to relax, and Objective-C looks a little bit more of a head rethread than my usual [stolen] line that “all programming languages are just dialects of the same language”.
Have you ever noticed how the saltines you buy when you’re sick or have an upset stomach tend to go bad exactly one month before you get sick again? Now you’re stuck with stale crackers – which doesn’t make you feel less sick – or faced with the prospect of hoofing it to the grocery store in an, ahem, unreliable and potentially infectious state.
Curse you, Nabisco. Curse you and your clever bean counters.
There’s one thing I don’t get about the complaints that the new Mac mini isn’t expandable: Have you already forgotten Apple’s strategy with the Pro [before we knew it was a thermal disaster]? Thanks to Thunderbolt 3, the expansion is on the outside, okay?
Get a new mini. Upgrade the processor to the “3.2GHz 6‑core 8th‑generation Intel Core i7”. Click “Add to Bag”. Pay $1100 and enjoy.
You have plenty of SSD to run the OS. Buy a fast Thunderbolt 3 external SSD if you need more space. Heck, buy a fast TB3 drive if your internal SSD ever dies and put the OS there.
I’d be surprised if the external hard drive ever noticeably slows you down. You can put your video card outside of the mini, for heaven’s sake, and I don’t hear anybody complaining about that – other than the price for the enclosure. But they don’t complain [much] about the speed.
Seriously. This is the mini you said you wanted. Enjoy it. ;^)
Finally updated to Mojave on my MacBook Air (2017). It’s nice that the login screen no longer has fuzzy text. I’ll admit I never really understood why Apple let the first thing you saw on the box be as craptastic as that text was. I understand that Apple can do a great job polishing things, but I don’t know that I believe they always do.
Other than that, so far I haven’t seen much exciting from Mojave.
I will say I’m pretty happy having purchased this MacBook Air now. I was worried they’d upgrade the MacBook line immediately after I purchased – and they did – but they didn’t touch the consumer laptops, and won’t until next week. $750 for a decent MacBook in June (during a great sale at Best Buy) doesn’t look as bad as it did originally.
Another unexciting thing: I did preorder the XR. Idk, that’s extravagant, and I don’t understand all the reviews calling the XR “affordable”. It’s not. It’s an insanely indulgent item. Unlike my Nokia 6 that I’ve been using for the last two weeks (long story), the iPhone SE and 6S I used previously both remain nice, fast phones. I don’t need an XR. You can spend much less and still have a great smartphone experience.
But even though I filled out the official form that says “leave the phone here” with my number and order number on it, UPS decided they’d rather not be bothered with leaving my phone at my home. Thanks for nothing, UPS! I can pick it up at their office, saving them a trip, if I want… between 7 and 8pm tonight. That’s it. That’s the window.
So great thing I preordered that phone. /sigh If I’m lucky, I’ll play with it Monday, maybe Tuesday, night.
It will be interesting to see if I change my tune on if it’s worth purchasing later, once I’ve used it. Coming from a 6S, I imagine it’ll run rings around it and take much nicer pictures. But do I need something that expensive, even if I use it an hour or two a day? Um… goodness, no.
As Sir Jony Ive is a little late for lunch, I do the next-best thing to talking to Apple’s chief design officer and pull out his most famous creation to watch a recording of last month’s “Apple Special Event” at the tech giant’s new Norman Foster-designed campus in Cupertino.
It is a film of two parts…. [Part one is a prepared movie short.]
I scrub through part two, an orgy of Californian self-congratulation that features a series of chronically upbeat senior Apple employees, dressed in varying shades of anthracite and olive and explaining, among other things, how the new model Apple Watch can now sense irregular heart rhythm, and call an ambulance if it detects that you’ve fallen down and not got up.
The first half of that last sentence is some well-crafted critical writing that deserves our notice. ;^)
I recently pulled out an old DVD I’d purchased years ago and popped it into a reasonably old DVD player. It’s interesting how DVDs date themselves with their supported formats. In my case, it opened by asking if I wanted “normal” or “widescreen”, normal, of course, being the now dated 4:3 ratio common for square tube TVs.
If I selected “normal”, things went fairly well. The height filled my widescreen TV’s screen, but I had, of course, black bars or boxes to the left and right so that the ratio was preserved.
If I selected “widescreen”, however, I had black boxes on all sides of the picture. That is, it was a “widescreen” projected into the faux 4:3 screen created in the middle of my widescreen TV for the “normal” ratio. A picture surrounded by black boxes is the worst of all worlds.
Solution? I had to tell my DVD player AND my TV we’re widescreen.
Well, there was an option in my DVD player (well hidden a menus rungs deep in an unhelpfully named "custom settings" menu) for output for a 16:9 ratio widescreen TV. Sounds good, right?
No. Not really. What that does without any other change is to output a squooshed 4:3 picture on my TV. What the heck?
Turns out my TV is expecting a 4:3 signal from its A/V ports. When it sees the 16:9 signal, it’s the TV that does the squooshing. You have to have tell the TV that you’re expecting a 16:9 signal from the DVD player, and set that up for your A/V port.
Does this mean if I plug an Atari 2600 into that port now that I’ve got my TV expecting 16:9 on the A/V that the Atari’s ratio would be off without resetting the property in my TV’s settings? I think so, though I haven’t tried.
Why is the picture quality so stinky?
But now the picture quality stinks, like a video taken with a point and shoot camera at the start of the digital era. Parts of faces often looked like they trailed their head’s position, like somebody was doing a strange rubber pencil trick with their eyes and mouths.
What’s going on? Can I fix this?
The quick answer is no, no I can’t. My TV is upconverting the signal, which is a fancy way of saying “taking a low resolution source and putting it onto a high resolution screen”. There aren't enough pixel-equivalents in the older DVD player’s signal to make a good picture, and the TV is using some algorithm to fill things in.
But my TV’s upconverting algorithm stinks.
Note that I said analog
Note that I said that this DVD player is using the A/V ports on my TV.
That’s that three-wire, analog signal. It stinks.
If I had a good DVD player, it would do the upconverting from the DVD, and keep the signal digital from source to screen. That would require, you got it, a digital connection to the TV, like an HDMI cord.
The DVD player I’m using has no upconverter, and the TV is going to have a hard time with a digital-to-analog-to-digital signal that’s already a few generations old. Plus it doesn’t really care about upconverting. It’s an inexpensive TV set. I also get the feeling that it does better upconverting a 4:3 signal, which makes sense. There’s a decent correlation between widescreen content and digitally encoded content.
A real solution would be...
So the real solution is a better DVD player, like my Playstation 3, with its own upconverter, connected to my TV with a digital cable. Unfortunately, I don’t have my PS3 handy. Eventually, I got used to the weird faces.
(To be clear, I was watching Lebowski, but the weird faces reminded me of the effects in Thumb Wars. ;^D)
Still, I for one thought it would sell very well; all indications are that Apple agreed, but it quickly became apparent that customers overwhelmingly preferred the iPhone 5S. Apple struggled to keep the latter in stock, having produced far too many 5Cs, and the model was quietly discontinued two years later….
The 5C’s failure, such that it was, showed that the iPhone had three distinct markets:
Customers who wanted the best possible phone. They bought the 5S.
Customers who wanted the prestige of owning the highest-status phone on the market. Heavily concentrated in China, they bought the gold 5S.
Customers who aspire to owning a top-of-the-line iPhone, but couldn’t afford one. They bought the 4S instead of the 5C.
I guess I’m wrongly biased from seeing tons of kids enjoy the 5c, sometimes even over a 5 of 5S. I’d guess the 5c failed largely because of the craptastic 8 gig low-end. That’s simply not a useable phone.
But the argument that people want what I’d call “aspirational luxury” from their iPhone is an important point.
As I said about the SE, above – “Well, first, you can’t pitch it as a spiritual remake of a four year-old design.” – is exactly what we're saying here.
If colors didn’t sell, the XR wouldn’t use them. Though maybe I should’ve substituted iMac for 5c?!
There is, of course, the question of cannibalism: if the XR is so great, why spend $250 more on an XS, or $350 more for the giant XS Max?
This is where the iPhone X lesson matters. Last year’s iPhone 8 was a great phone too, with the same A11 processor as the iPhone X, a high quality LCD screen like the iPhone XR, and a premium aluminum-and-glass case (and 3D Touch!). It also had Touch ID and a more familiar interface, both arguably advantages in their own right, and the Plus size that so many people preferred.
It didn’t matter: [For] Apple’s best customers... price is a secondary concern.