UITableView is a cornerstone of classical iOS development and one of the oldest classes. It’s used in pretty much all iOS apps and has been around since iPhone OS 2.0. So why would we propose deprecating one of the most used classes?
Simple: UICollectionView. Added in iOS 6 (2012), it’s almost a perfect superset of UITableView, yet it can do so much more.
I have had similar thoughts about getting rid of UITableView ever since I used my first UICollectionView. The list of reasons to stick with table views get smaller every year. Off the top of my head, the main reasons I would choose a table view over a collection view in iOS 10 are:
Using the system UI for editing: This includes the drag handles on the right of a UITableViewCell along with swipe to delete. Dragging and dropping in a collection view is not hard, but you don’t get that standard UI for free.
Autosizing cell height: A UICollectionViewCell supports autosizing via Auto Layout the same way that a UITableViewCell does, but I find a table view simpler to work with if I only want the height to be auto sized while the width matches the container (in other words, if it looks like a table).
Both of those problems could be solved with a theoretical UICollectionViewTableLayout.
The one big advantage to switching everything to a collection that I did not see mentioned in the linked article is customization. UITableView is a pretty opaque class; it has entry points for customization, but doing something that an Apple framework developer did not anticipate is either impossible or involves weird hacks or workarounds.
UICollectionView, on the other hand, is extremely customizable. By building on top of supplied UICollectionViewLayout subclasses (like UICollectionViewFlowLayout and the theoretical UICollectionViewTableLayout ), you can add customizations while inheriting all of the built in behavior from the superclass.
If this is something that you think Apple should do, it is worth your time to file a radar.
Since Final Fantasy VII has been a pretty common topic here as of late1, I could not let this Polygon piece by Matt Leone go by without linking to it:
When Final Fantasy 7 shipped in 1997, it was Square’s cash cow. The game pioneered 3D graphics techniques, helped Sony’s PlayStation outperform its competitors, established Japanese RPGs in the West and went on to sell more than 11 million copies. To many fans, it defined Square as a company.
Team members describe it as a perfect storm, when Square still acted like a small company but had the resources of a big one — and was willing to pour its money into one of the game industry’s most ambitious projects right as the 3D graphics industry began to take off.
“I don’t think I’ve felt that kind of excitement ever since,” says programmer Hiroshi Kawai. “It wasn’t just the fact that Square had the resources to get all the people and the hardware and the technology together, but even before seeing anything run, it was as if we knew we were going to be making history.”
With Final Fantasy 7 now approaching its 20th anniversary and a high-profile PlayStation 4 remake in development, we decided to look back.
Over the past two years, Polygon tracked down more than 30 people who had a hand in the original game and asked them to tell the story of its creation. Below, in their words, you’ll find a story about a company in transition — and the money, politics and talent that pushed it over the edge.
A not-insignificant portion of my childhood was spent playing Final Fantasy VII. It is easily the most influential video game I have ever played. Even with my own personal history with the game, I never did take the time to learn much about the company and the people that created it.
This oral storytelling compiled by Matt Leone at Polygon does a great job of filling in that gap for me. Not only does it tell the story of how the game came to be2, but it shows how the unexpected success of the game changed Squaresoft as a company.
The timing of this piece could not be much better with the remake sitting on the horizon. While I look forward to playing through the new version when it is released, I don’t see how it can have anywhere close to the impact on me that the original had.
The iOS app supports MFi game controllers, so if you connect a good wireless controller1 and hide the on-screen controls2 you end up with a setup that is pretty similar to the original PlayStation version of the game running on your iPad. From there, simply mirror your iPad’s3 screen to the AppleTV and you are back in 1997, albeit with a much larger TV.
While this method ends up working pretty good, it is still fiddly enough to make me want a native version on the AppleTV. In the meantime, I can just play the re-release4 on the PlayStation 4.
Unfortunately there are some new system controls in the iOS version of the game that enable cheat modes that you can’t get rid of. ↩
This method works with an iPhone too, but it is much better on an iPad. The iPad has the same aspect ratio as the original game, so when you mirror it to a widescreen TV, there are just black bars on the side.
An iPhone has a wider screen than the iPad, so the game fills in some ugly banners on the sides of the game content that get mirrored to the TV. Yuck. ↩
The size limit of a tvOS app bundle has increased from 200 MB to 4 GB, so you can include more media in your submission and provide a complete, rich user experience upon installation. Also, tvOS apps can use On-Demand Resources to host up to 20 GB of additional content on the App Store.
This could be a big deal for games on the AppleTV. Developers had to really work to get games working at the old 200 MB limit; and since the AppleTV gaming market was so small, most simply didn’t bother.
With this change, some of the more in-depth1 iOS games can be brought over to the AppleTV much more easily, so I hope this serves as a catalyst to get more good iOS games ported to tvOS. I am really hoping for Final Fantasy VII and Final Fantasy IX.
Also, having up to 20 GB of On-Demand Resources almost puts tvOS games in the same playing field as AAA games on PS4 and Xbox One (in terms of size). This should lead to better games.
However, I am a little worried that this will end up being too little, too late. When tvOS launched, gaming was held back mainly by two policy decisions: the 200 MB binary limit and the inability by developers to require a game controller for a game2. Both of those policies have been fixed, but I’m not sure that it will matter at this point.
The best case scenario that I can think of would be for Apple to release new AppleTV hardware with an A10 chip this March at the supposed iPad event and to release an Apple-branded game controller with it. Bonus points if the game controller is included in the purchase.
Apple turned iOS into a large gaming ecosystem seemingly by accident. That same success won’t happen on tvOS: it will require investment from Apple. In the last six months, they have removed some hurdles and roadblocks. I hope that signals more to come soon.
I don’t think that there is anything to this, but it is interesting that this news dropped on the same night as the Nintendo Switch keynote.
With millions of commuters relying on our app to improve their trips, it’s our job to get access to the highest quality transit data available.
Up until now, we’ve had a pretty standard operating procedure whenever we launch a new city:
First, partner with a local transit agency. Second, acquire their open data. Third, compress the hell out of that data. Fourth, adapt the design of the app to that specific market. And finally, we release it—relaying all that info to users in the fastest, most intuitive way possible.
Local transit agencies are our best friends. By opening their data, agencies empower us to create a better rider experience in almost one hundred cities.
But what do you do in a city where there isn’t an agency to work with? What do you do when there’s no data to access?
How do you optimize a transit system when it doesn’t technically exist?
Transit is an app that maps and schedules public transit data, typically from a regulated and structured data source like local transit agencies.
The story of how they are using that same approach to provide transit data to the Kenyan city of Nairobi (where no centralized/regulars transit system exists) is fascinating from a social, technical, and human level.
It is cool seeing how smart people are building apps to tackle real (and difficult) problems in the world.
I was poking through and cleaning out my Safari Reading List and came across an article that had been sitting in the backlog for a over a year. It turned out to be most of the most fascinating things I have ever read.
It is a two-part article that covers the road to achieving real (i.e. human level) artificial intelligence and what happens when (not if, if the article is to believed) we get there.
There are parts of the article that are worth quoting, but I will limit myself to one1:
What we do know is that humans’ utter dominance on this Earth suggests a clear rule: with intelligence comes power. Which means an ASI2, when we create it, will be the most powerful being in the history of life on Earth, and all living things, including humans, will be entirely at its whim—and this might happen in the next few decades.
If our meager brains were able to invent wifi, then something 100 or 1,000 or 1 billion times smarter than we are should have no problem controlling the positioning of each and every atom in the world in any way it likes, at any time—everything we consider magic, every power we imagine a supreme God to have will be as mundane an activity for the ASI as flipping on a light switch is for us. Creating the technology to reverse human aging, curing disease and hunger and even mortality, reprogramming the weather to protect the future of life on Earth—all suddenly possible. Also possible is the immediate end of all life on Earth. As far as we’re concerned, if an ASI comes to being, there is now an omnipotent God on Earth—and the all-important question for us is:
Will it be a nice God?
If you enjoy that article, Wait But Why has another one about the Fermi Paradox that is an interesting read as well. I think this is a site that I am going to keep a closer eye on.
Calling it an “omnipotent God on Earth” is a bit over the top for my tastes, but the point is interesting nonetheless. ↩
Oh American church — I am you. The son of a pastor: born on the west coast, raised on the east. I wrestle with the faith of my fathers — MLK, Bonhoeffer, Kierkegaard, St. Paul, Abraham. We are born from a history of glory and shame. From the cross to the inquisition, from slavery to civil rights. Yes, this church of triumph and failure is my family: awkward, beautiful, and fatally flawed. I have no stones to throw — after all, I’m only human, and I get it wrong more than most.
So let me start with a confession: I have sinned and fallen short. I confess I am prone to failure. My heart is inherently pulled by the base desires of pride, lust, violence, and greed. I confess that the gospel I’ve inherited does not belong to me or to America. But rather we — we the people, we human souls — we belong to this gospel of peace.
I confess that we have grown cold. That we have lost sight of our True Love. And together we have forgotten the cross: the self-sacrificial love of the One who calls us to go and do likewise. Oh, American Church! I am you and you are me. And together we have grown judgmental, folding our hands and closing our doors. Have we forgotten that we were once the ones on the outside looking in? Have we forgotten that our salvation is a gift given to us, that we are but jolly beggars at the door of the Gift-Giver himself?