I wish I had known this stuff earlier, so here you go with part 2. This will especially be interesting for people who think the Mac misses some features they like on Windows 7, or that you wonder why Apple didn’t build em in. Small side-note: I use A LOT of apps that modify global input, but it doesn’t cause any problems at all. There was one single incompatibility that KeyRemapForMacbook could fix for me.
The first tool I want to mention is BetterTouchTool which does all sorts of nice & crazy things. For example, it includes the Window Snapping behavior from Windows 7, where you can drag a window somewhere and it maximizes like this:
The tool is free, and does a lot more in this regard, and as you can see from this screenshot, you can configure the hell out of BTT (oh, and the window moving part on the other settings screen is also really nice, like “move the window under the cursor when I hold fn“):
I don’t use a mouse anymore, because BetterTouchTool does LOADs of stuff by configuring gestures for my touchpad. As an example what it can do, I show you the following screenshot with the Chrome settings for nicer tabbed browsing:
Swipe three fingers up to open a tab, down to close it, and tip-taps left and right to hit the shortcuts for switch to left or right tab. Nice right? How cool would it be if Finder had tabs and worked this way? Enter XtraFinder:
Yes, with the tabbed browsing in Finder, I defined the same stuff for the finder that I also defined above for the browser in BetterTouchTool, which looks like this:
XtraFinder is free too, and it also adds a lot of useful stuff freshly converted Windows users miss, like “Create new .txt here”, but also stuff very handy on the Mac like “Create Symlink”, “Open in Terminal” or “Copy Path (with various syntax modes like path, windows path, file-URL, etc…)”. See for yourself some examples as screenshots:
The only thing missing at this point is a fast way to jump to exactly the right folder or file that you need right now. On Windows, I used everything for that, on Mac my first choice was intuitively using Spotlight. Which is fine, it’s just that the last must-have app in this post – Alfred – is faster and better and more customizable. Just install and use it, you’ll see:
Alfred can do a lot of stuff, integrate 1Password (I’m not going to show you a screenshot, but that’s a must have app too), but generally it’s just a great search tool. Btw. the guys behind Alfred have just released the beta of the next major version, which is a complete rewrite that will support some fascinating things like a Google Instant search right on your desktop.
One more giant feature I need to post a screenshot for: Alfred includes a VERY good searchable clipboard history. In the next post of this series, I’ll likely write about automation of basically every thinkable workflow using Keyboard Maestro.
I’ve been to two Windows 8 trainings from Microsoft in the last few weeks, as we at Abelssoft build Windows software for consumers and Windows 8 will be a pretty big market, as it will ship with every new PC sold from Octobre on. I’m not sure how much I can tell about this, so I’m keeping out stuff where the speaker directly stated to not tell the public, but basically all I’m telling has already been leaked before or is directly stated on Microsofts MSDN pages at http://dev.windows.com or http://design.windows.com. Also I’m not from Microsoft, so take everything written here with a grain of salt.
It was presented that we now have about 600M Windows installations, and googling just found that half of them is on XP, 6% Vista and the rest Win7. I guess the Vista users, some of the XP users (XP support is over) and everyone buying a new PC will have Windows 8. Everyone of those people will see the windows market and everyone who tries to use the Metro interface will very early need to have a live ID, which enables them to enter the windows market. The tablet users will only have the Metro interface as the only desktop apps working will be the office products Microsoft preinstalls.
So the market will be big. Very big. For Metro apps at least. With Windows 8, every Metro app that Microsoft thinks to be a good design example for Metro will be shoved into a large amount of people’s eyes.
The Metro Design Language is nice, clean and minimalist. I like it. On design.windows.com everything needed is shown, including design decisions, metrics and what you need to design a Metro interface app.
Frameworks and the Market
Most of the other technological stuff that was mentioned is already known to everyone who looked at the Apple store concepts. For example it’s the same mechanic of declaring which permissions your app needs to work, if it needs to have access to your location, sensors, etc. Microsoft here copied from Apple where it made sense, which is basically everywhere.
Interesting differences include:
The Microsoft cut is 30% unless you app is very successful – as soon as it reaches a certain threshold in earnings (the number 25.000$ appeared somewhere), Microsofts cut lowers to 20%. This is a very nice move from Microsoft, although it won’t affect most of the apps it keeps the hopes of developers for getting rich high. As far as I know, this is counted on a per-app basis.
Trials. There’s a (feature-limited & time-based) trial mode, recurring payments (subscriptions), in app purchases – including a mock windows store for testing.
Not as strict as Apple. I questioned if we would be able to harvest the users email to give him an otherwise free app, I got no definitive answer but the basic message was that Microsoft won’t stop you from using the business models you’ve used so far. They only said that the windows store team will check your app, and if they cannot get in or see the functionality based on a trial version, they will likely reject it. From a user perspective, I don’t like it so much, but from a developer’s perspective, this is good news.
Synching is easier. Everyone who can buy stuff from the store automatically has the credentials to use Microsofts Dropbox Skydrive. An SDK for this is provided to work with it in code. This means that synching will be really easy AND cross-plattform (as you also have Skydrive for Mac, iOS, Android and such), which on Apple’s platform iCloud is designed to lock people in the Apple world.
The app sandbox will be one-sided. The Metro app has only access to a few places on disc, but from the “old” Windows apps you’ll be able to scan through the (hidden) app folders of the Metro apps and theoretically influence them. This has an impact on security considerations, as you cannot openly put private user data on disc, but it also means that you can use file-based communication to communicate with your “old” desktop apps and services. The implications of this could be manifold. For example, you could implement a way for Metro apps to recognize if there’s already a full version of the apps’ desktop equivalent is installed to automatically make the trial free for the user.
No system database will be provided. No core-data for Windows 8 now. You can use file-based databases in your app, but that’s it for now (SQLite and one other thing I’ve never heard from are supported).
.NET 4.5 is something I’m really looking forward to. .NET 4.0 already is a heavenly programming language from the future, and .NET 4.5 will be another evolutionary improvement. The asynch language feature automatically makes your synchronous spaghetti code asychronous. Which is not only big for your code, but should also make the whole framework faster, as Microsofts talented engineers provide you with asych representatives of usually blocking code.
In the developer and designer trainings is was oftentimes emphasized that you more or less automatically have a valid metro design when you use the new grid-based application template, as it scales and reformats contents automatically based on device and portrait/landscape orientation. I got the feeling that this was stressed a lot as Microsoft doesn’t think people design good UIs. If I look at the Windows world, this is mostly true.
The semantic zoom is another big paradigm that will be greatly supported by the grid. The idea is that you can zoom out and in on everything so you have only a single view in your application that shows different levels of detail,depending how far zoomed in you are. You can see with in the Windows 8 start screen, where you can zoom out to have an overview of all your icons, while zoomed in you see interactive tiles and program names.
One other interesting thing is that SVG graphics might be usable, which is a feature I wished for a long time ago. Sharp graphics without big file sizes should be good for everyone.
The Developer and Designer Trainings
Overall, I would have expected more.
First, I was expecting more non-official information. The non-official information I gathered was merely what everyone would expect to happen anyways.
MS’s own stance on details isn’t very universally consistent. The to trainers I met didn’t have the same knowledge about things, and some information was even contradictory.
The number of trainings and the overall low number of participants oftentimes let me think that Microsoft is desperate to train developers to make something else than the 10 year old windows forms that we all know and hate. In a non-representative questioning of the audience, only about 1/3 of the attendees knew about MVVM, which is the de-facto technical standard design pattern for modern Windows applications since about 2007-2008. This means that most of the Windows developers are about 5 years behind in knowledge. Maybe this is the reason why the trainings didn’t dive very deep.
The early beta-like release of code isn’t very good to test. While I like the idea of the semantic zoom, the code base is buggy so it can hardly be tested now. On a sidenote, of course it’s still better than not releasing stuff beforehand.
The User’s Point of View on Windows 8
Users will see Windows 8 very differently than developers. In my opinion, you need a desktop and different windows for real work, while having the minimalist full screen experience for tablet PCs will be the primary way to go.
Having seen Windows 8 weeks and having played with it a lot, in the developer trainings I learned a lot of hidden gestures that a user won’t understand. Asking for Microsofts plan to make the user understand the new interface, I didn’t get much more than “Yes, we’ll have to do something about that”. UPDATE: Windows 8 is out now, and they didn’t.
Therefore I guess that many will be puzzled, and that many will stick to the edition of Windows they currently have. In fact, I even think that Windows 8 will be Metro’s Vista – an unfinished product that lays the groundwork for a really great Windows 9. Sadly, no Microsoft representative was going to talk to be about Windows 9.
UPDATE: Microsoft screwed it
1.) Discoverability: While working with Windows 8, I noticed that there’s no indication if there’re options and if the charms work on this page of the app. In Microsoft-theory, every app should implement a way to share stuff, the search charm etc, but if this isn’t implemented or there is just nothing to share or search the charms don’t work. I would have expected that in the final implementation they’re greyed out, or hidden, if thats the case, but it isn’t.
In terms of discoverability, it would be better to have a visual indication that a search or a sharing charm is available, as when you want to share or search something, you don’t want to check if thats possible at the moment. Same problem with the lower options bar – you can never know if there are options unless you find out on every page of every app. This will lead to users testing out swipes and strokes all the time.
This makes Windows 8 a bad tablet OS.
2.) Touch on Desktop: Soon the Surface Pro will be the first real Windows 8 device where you might want to try to do some work on a touch device. Microsoft promised to make the old Windows Desktop more “touch-friendly”. This is necessary, because it’s where you’ll have to do work, because the Metro part of Windows 8 with it’s one-window open approach won’t work for most people. What happened? They increased the padding on the Ribbon interface. That’s it. Users who really try to do work in Office on a touch screen will often miss their touch targets.
3.) Two worlds: The distribution of settings you want to make in two different system settings are deeply frustrating, when you cannot find the setting you look for – because it’s in the other settings. When you wanted to drag a file in Mail, you can’t now. When you wanted to look at a Wikipedia page while writing something for reference, know you can’t. (Well, you can, but then you’ll try to have to ignore the Metro “Windows 8 – Sytle” part of Windows, which makes Windows 8 a worse operating system than Windows 7).
2. + 3. makes Windows 8 a bad Desktop OS.
TL;DR: Windows developers will finally have to learn something new, as the market will be big and I believe that the Windows AppStore will initiate a new gold rush. Windows 8 is technically a very nice concept, but the trainings were a bit shallow and Microsoft seems to be desperately hoping to find developers who will learn all the new stuff their brilliant engineers have been working on in the last 10 years, that nobody used because of Microsoft’s backwards compatibility (the old shit still runs), and devs who will look at MS’s style guides. Users will like Win8 for tablets, but not for PCs, where it will not be too successful before Windows 9.
As I’m just typing a small review for “ToDo” on Mac after it got some bad reviews on the mac appstore, I thought I might as well share it here on my blog. Here is the translation from my german post:
ToDo is not perfect. But I’ll begin with the nice little tidbits that make me keep on using this app, which is the best feature a ToDo app can have: continued usage.
There’s a keyboard shortcut to quick add tasks, that can be defined in the settings. After the shortcut, just type the task name and hit return or tab, which adds the task and lets you go on typing the next tasks name unless you hit return or tab again. Great feature for quickly adding tasks.
Clicking on the blue linked day in the calendar filters everything by tasks due today
CMD + N is the shortcut for a new task, or, if you’ve selected a project or a tasklist-task adds a new subtask. With the arrow keys you can navigate in the list, hitting right or left arrow folds or unfolds projects and tasklist-tasks.
If you’ve selected a context or tag, you don’t only get the whole list filtered by that tag / context, but also have new tasks get the context and tags automatically selected for the active values. Very nice thing if you’re seperating contexts as work and private and projects as tags.
I should mention that I only use “lists” for the default one “inbox” and “ideas”. I’m throwing everything into ideas that shouldn’t be deleted, but that I usually won’t want to clutter my list. And you can completely filter out lists from your views, what I did with “ideas”. Additionally, context and tags are kept, so I can scan for ideas very targeted, if I need to.
Via drag-and-drop you can drag your single or multiple selected tasks to tags, contexts, lists or on a due date (in the calender) to set those on the task(s). Very nice way to easily set stuff on tasks.
As I like this app, I want to make some point that could be improved, and if anyone reading this develops this app or knows someone who develops this app, please forward this.
automatic recognition of context by WIFI-SSID (or place on iPhone)
keywords for the quick-entry dialog (for example #tagname or @contextname), autocompleted if possible
more folding levels for tree-like tasks
more performance after CMD-N: sometimes half the typed name is missing because I didn’t wait for the new task to pop up in the tree
The app fits my workflow most and keeps me using it – what no other ToDo-list-tool has ever achieved as I’m to much of a GTD freak. Have fun with this app.
Over 3.000 people answered the stackoverflow survey and the following were the results interesting when you want to analyse phone-choice for developers. There are numbers from the “What technology products do you own” question:
Other Smart Phone
Regular Mobile Phone
The people who answered this survey are pretty smart, they’re all developers who we can agree on being relatively smart. They also all would be able to use and understand complex technology, so features will trump usability in this audience more than in ordinary comsumers. The developers also have pretty good paychecks, so most likely they all can afford all types of smartphones. The list above is not mutually exclusive, so a developer might have an Android, an iPhone and a blackberry device, but added up all percentages are 112,1 … so most likely only ~10% would have two phones.
36.9% are from north america (just to include this AT&T miserablility factor). 7.5% are engaging in mobile development, while many many developers are into web development (from the comments on the stackoverflow post you can see that people were not so sure about this question). Sidenotes:16.1% also have an iPad, 14,4% have a kindle (only 1,6% Nook), 4,7% own an Apple TV. I can’t see any other values play into this, the Java vs. C language proficiency seems pretty equal (they didn’t ask for Objective-C so you can’t draw conclusions from that), well maybe the developers most used operating system is interesting:
Mac OS X
Is there an iTunes for Linux? From what a quick google search could tell me there isn’t … So are there 18.2% not willing to use an iPhone for that reason?
The only thing I want to add to these numbers is that I would have thought that among developers Android is more common than the iPhone, especially as developers often want to fiddle with the system more. I drew my own conclusions, but as I don’t want to sound like a fanboy again, I just will let you draw your own.
So I got my iPhone 4 at last. But how does it feel compared to my old 3G now? Well, that it’s obviously better I don’t need to tell you I guess.
Following definite pros:
The display doesn’t accumulate fingerprints anymore. Big plus. Wonder how they did that.
The distance to the screen is lower, as the glass on the screen is not that thick anymore. This feels very good, as it feels more like touching the interface directly now.
The antenna is definitely better than before. I can make the WiFi drop one bar if I use a death grip that makes my hands hurt, but even with that applied I can’t make the phone signal go down no matter what.
The camera is just superb compared with my 3G or the half year old nokia of my girlfriend. The pictures now definitely look amazing (HDR also helps picture quality) and the video is just very nice.
The device is very thin. it’s not any lighter, but thinner than the 3G and it feels much tougher.
Everything just got faster due to the faster processor and the additional RAM.
The free Belkin case I got for free is very fine and an iPhone stand was included with it. Nice!
This is what I would call “not so nice”:
The price is still high
The battery life seems a bit better, but it doesn’t hold longer than two days no matter what. Okay, I use the device pretty often, but somehow I would have imagined more. Update: when you use no geolocation stuff it holds up a little longer. The GPS sucks the battery dry in no time. Over the last night (10 hours), the iPhone lost only 5% battery. Nice.
Apps still don’t get a chance to put something on the lockscreen. This now is the sole reason for me to install a jailbreak as soon as it’s released – I just want to see my upcoming calender items and my Appigo ToDo items there.
Many apps still don’t get the multitasking right or their implementors just don’t publish the necessary updates. To put it straight, I even believe that there are only that many iPhone apps out there, because the possibilities were so limited. But I guess that this is a temporary problem and we’ll see more working updates soon.
Radio.de is my new favorite Internet radio app. Background music (that sometimes ends after some songs if in the background) is possible and there are 500+ radios available including the main popular German radios that often have their own (non-backgrounding) apps.
ToDo is still my favorite todolist app.
Meebo is the only true backgrounding IM client that’s available and working. The good side is that Meebo is really nice. It supports ICQ, Google chat (that also messages if you get a mail there), Facebook chat and a lot of other services that I don’t use. Meebo works in the background and keeps you logged in 48 hours. If you log out or are logged out due to inactivity, you get a push notification telling you so. For Windows they have a notifier that even recognizes that you’re on a computer now so you don’t get notified on your computer AND your iPhone. If you get pinged on windows, the notifier takes you to your conversation in the browser on the meedbo.com website.
(There is still no latitude client that supports latitude friends. And I tried them all. Till then only the comparably slow Google mobile latitude page must suffice. I’ll update this post if I find something better.)
This post was written entirely on the new iPhone using the WordPress app. It was only edited for making the lists and adding tags and a picture afterwards.