RT @logemann: Time to buy APPL again. Looks cheap. All those iPad rants wont hinder the success. 2010/01/31
i got a free MSI Wind, downloaded SnowyWindOSX, burned, installed, under half a hour later i have a working OSX 10.6.2 even iphone tethering 2010/01/30
The media is awash with reviews about the iPad being underwhelming, limited and so forth but mostly missing the point save for a few notable exceptions (1, 2, 3).
I am going to state in no equivocal manner that the iPad is the biggest thing since the PC was introduced by IBM in 1981 and for a long while it is going to be in a class of it’s own that could be easily called the “Truly” Personal Computer.
It is going to be the first choice as a first computer for people not having one, and the first choice as the first portable/tablet device for people not having one.
It is going to sell huge numbers slowly but steadily and by 2015 there are probably going to be 100-200 million units sold compared to 1-2 billion computers worldwide.
Why ? 5 reasons :
1 – no operating system learning curve The majority of computer users do not want to learn how to use a operating system and only use one for a limited number of tasks identified by apple as : access the internet/email, read books/periodicals, watch/listen to audio-visual media, play games, manage contacts/calendar/spreadsheets etc.
For everything else there will be a app, you know “there’s an app for that”, as for the techies/geeks will probably sport jailbroken iPad’s or run OSX on it.
The majority of computer users are not really familiar with how a operating system works, and they should not be, once they figure out that they can do pretty much everything they need on the iPad the time they use a PC will dramatically decrease.
2 – touch: Have you ever watched a person learning to handle a mouse trying to click a icon and instead dragging it, struggling with frustration to grasp the user interface elements in a operating system ?
Have you ever seen someone that never used a touch device like a iphone before or a 5 year old baby just take it and immediately figure out by intuition alone how it works and how to handle it ?
Touch is infinitely more natural than cursor/pointer based interaction with user interface elements and the mouse will slowly grow limited to the those of us that really need the precision the same way that trackball and graphic tablet users are limited to those that need it’s added functionality when interacting with a computer.
3 – portability : The “personal” in PC used to mean you owned it, it was yours, but nothing is more personal than something you can carry on person, have it always with you, nothing more personal than an device you control by touch alone.
The technology is mature enough at this point that devices are really starting to be portable , at this point the size of the device for now is almost solely dictated only by the size we want it’s display to be.
The iPad is exactly the right size between a phone and a laptop to be wearable in our bags and purses without being a bother.
10 hours of battery is finally starting to get close to handling a full day of usage unprecedented in portable computers.
4 - multipurpose platform : Every single engineering/musical/medical etc. multitouch device can be replaced by a single iPad having multiple specific software, people have been dreaming this for ages, the days of proprietary devices that married one specific piece of software with a specific piece of hardware are numbered.
5 – affordability : Apple has really made apparent their intention of having the iPad priced as low as possible and as they sell more and more of them and the technology evolves and cheapens they are going to significantly lower the price at which they sell the iPad without a significant loss of the margins.
That being said the iPad is great, the only issue with it is the paradox that makes the level of simplification in the iPad only possible in conjunction with paramount control over they way it behaves, if i could ask Apple for one thing it would be a single switch that takes away a bit of simplicity in exchange for a bit of flexibility, there are certainly a number of us out there that would pull it.
Sparkle is the updates framework for cocoa that “just works” , yea ok it does , however the documentation for it is a bit lacking on some very important aspects that i discovered over time :
1 – the preferences for your application must have SUAutomaticallyUpdate TRUE for autoupdates to happen , just setting SUEnableAutomaticChecks TRUE in the app’s Info.plist is not enough ,
create a checkbox in the preferences of your app to toggle it on , unless you do that you have to use one of the methods above directly in code.
2 – since 1.0 sparkle implemented sparkle:shortVersionString to match CFBundleShortVersionString , the problem however is that it is only used when it also sees a different version in sparkle:version , for example if your app has
CFBundleVersion 1
CFBundleShortVersionString 1.1
and the appcast has sparkle:version=”1″
sparkle:shortVersionString=”1.2″ sparkle will say you have the latest version , it only uses shortVersionString if version differs from CFBundleVersion
3 – some times you might also want to force a update , either when the user clicks a Update Now button or when the application launches
Both check for a update , however the first way also notifies the user if the current version is the latest one , so should only be triggered from a user action.
The second can be ran transparently on startup as it will not alert the user unless there is a new update , remember to set automaticallydownloadupdates off , or else the updates will only get downloaded and never installed (bug in Sparkle 1.5 b6)
Peering into the settings for the magic mouse i have found out what looks like support for 3 finger tap gestures for Dashboard and/or Expose control , namely :
“Dashboard” – three fingers tap
“Exposé All Windows” - three fingers tap to expose all window
“Exposé Application Windows” - three fingers tap to expose app window
“Exposé Desktop” - three fingers tap to expose desktop
These look like the options you would see in a dropdown list from which to select one action associated with a 3finger tap.
Currently you do not have a mouse system preferences option for 3finger , only “One Finger” and “Two Finger” sections are available for now.
Another thing to note is that a 1 finger swipe action is also referenced , and that “Mighty Mouse” still remains as as string reference , if you search for that in system prefs the mouse icon will be highlighted , this could show that apple was really in a hurry on this , sloppy or understaffed , either way here is the system preferences movie for the magic mouse:
Who knows if 3 finger tap functionality was planned but not finished or removed , but it was not entirely built and disabled either , because it can not be enabled as it is.
EDIT : I released a free app to enable adding middle click , expose , dashboard , desktop , spaces , both button holding , etc , the works in my app MagicPrefs
unable to sign jar: java.util.zip.ZipException: invalid entry compressed size
99% of the time what that means is your jar is already signed
However jarsigner has no way to remove signatures from a jar , but you can do that manually since a jar file is a zip archive all you have to do is extract it , delete the META-INF directory and repack it.
Personally i use muCommander , you have to do this : shift+F6 (rename to .zip) > enter > del META-INF > enter > shift+F6 (rename back)
It treats archives as standard directories so it automatically handles the unpacking and repacking of the archive transparently
If you are a terminal lover you can run this for the same results:
zip -d YourJar.ext “META-INF*”
deleting: META-INF/MANIFEST.MF
deleting: META-INF/CERT.SF
deleting: META-INF/CERT.RSA
Which is going to result in this :
deleting: META-INF/MANIFEST.MF
deleting: META-INF/CERT.SF
deleting: META-INF/CERT.RSA
The reason why i have to go into all this is because unlike Eclipse , Netbeans has no way of building a unsigned android apk (unless you mess about with -sign in nbproject/build-impl.xml) but this should apply and work with any kind of java package signing scenario (except the Maven jarsigner which blissfully has a unsign feature)
Personally i think a gesture enabled mouse is a great move , and am looking forward to seeing it implemented in more mice , besides the mighty mouse i have been using a Logitech Air mouse which has a touch scroll with momentum which i miss dearly when using the mighty mouse , i am sure the same will be true about gestures.
But for now i want to touch on some issues with the magic mouse , when it was announced i was hoping a old issue with te apple mouses might have been addressed , that is the inability to hold down both buttons , the mouse registers a left click when a user clicks with both the right and the left fingers pressing.
While the swipe functionality alleviates this a bit there are still a number of 3d applications , games , and browsers that need the old “poorman’s swipe” a left swipe being similar to pressing and holding the right button then pressing the left and vice-versa , but this way of clicking can not be entirely replaced by the swipe feature as you can not swipe and drag for example.
What i do hope is that software developers will start to be aware of gesture enabled mice and of mice lacking 2button hold functionality , or even better mice manufacturers start making mice that implement both features , in any event here is a osx application i wrote for the purpose of testing mouse functionality.
Wether you like to have a file manager running as root , need a file manager that can really dig into the guts of the os or are just nostalgic for the good ole 2 pane commanders , either way you got to have mc handy on your brand new 64 bit osx.
There are a number of ways to install it , you can go all out downloading the source and dependences and compile , or take a easy road by means of the macports or fink packages , however there you might find this way the easiest .
Attached to this post is a zip file with the compiled sources, download and extract it to the root directory of /mc , then open a terminal with 5 tabs , type “cd” in each then drag each of the folders to a different tab , press enter in each , then type “sudo make install” in each tab , in this order : gettext > pkgconfig > glib > slang > mc.
That’s all there is to it, delete /mc, now type mc to get your native 64bit mc fix.
Title: mc Caption: archive File: mc.zip Size: 53 MB
With the onset of copy/paste in the 3.0 version of the Iphone OS i figured i would write some software providing a facile way of encrypting text with a password for sending via sms , email and whatnot, it is called TXTcrypt after a long struggle it is now both on the appstore and as a free desktop version which is legal to download.
Enter the 1996 Wassenaar Arrangement signed by 41 states (see attached map) , requiring special permission to market/export encryption software with keys greater than 56 bits in size and 64 bits in length (Category 5 Part 2 5.A.2.a.1.a.) .
This limitation applies to symmetric key algorithms , and just determining what i stated above required me to study dozens of cumbersome and often confusing documentations (that use length and size interchangeably).
Moving on, as the Apple App Store is based in the US , and US is a signatory of said act , applications using cryptography for anything else than authentication purposes are subject to the regulations of the Wassenaar Arrangement body in the US , namely The Bureau of Industry and Security, US Department of Commerce (BIS) .
The regulations for the named (5.A.2.a.1.a.) category fall into the BIS ECCN (Export Control Classification Number) 5D992 , and can be exported under the EAR to most destinations with No License Required (“NLR”) but a NLR Notification742.15(a)(i)
For software exceeding 56/64 bits the classification is ECCN is 5D002742.15(b) , and a export license if required in the form of a Commodity Classification Automated Tracking System (CCATS) number , luckily BIS has the conveniently named Simplified Network Application Process Redesign (SNAP-R) application for that , but just registering your company to request a PIN to access that turned into a monthly long enterprise , about the time when i abandoned this approach.
Because as it turns out , Apple does have a process handy shall you abandon or be stuck for a very long time in the claws of BIS , ECCN 5D002 rated applications without a export license can be posted to the app store for the U.S. and Canada only , just set it as so in itunesconnect and send the completed form (U.S.Canada Only Form.pdf attached) to the Apple Export Department.
On the heels of the Firefox 3.5 release that brings HTML5 video embedding support the following pattern of embedding video files emerges (including on mozilla.com and openvideoalliance.org) that is two distinct sources for the video , one encoded with ogg , one with mpeg4 , using html code as follows :
What this does is show the mp4 file in safari and the ogg file in firefox , and it is all well and dandy except in the cases where a lot of media is involved it is unpractical at least to have 2 formats for every video file .
So let’s chose just one format then , because ogg is a open standard and endorsed by the One Video Alliance it is a safe bet , sites like Dailymotion are already migrating to it .
Ok , how about browsers besides firefox , well safari for example can also support ogg video with a codec plugin namely Xiph Quicktime Component , but a simple test reveals a problem with the mime types , safari will not play the ogg file if it has type=”video/ogg” in the html tag , works just when embeded ogg files have no type defined.
At this point i am not certain whether it’s a bug or just a misconfiguration in osx or safari, apparently safari uses system wide mime-type settings that are accessible with System Preferences plugins like RCDefaultApp and MisFox but they do not help this cause a lot.
The point i am trying to make is that if you want to use a single format for embedding video and want it to work in all html5 compatible browsers (with ogg plugins) you best not define the type in the html tag if you want the video to work in safari.