- DynJava. Java dynamic scripting interpreter engine. Gives you runtime access to all protected and private methods and fields of all running applications, and executes arbitrary Java code with all permissions.
- AndroidShell. You can invoke any Android APIs from PC and see the execution result immediately.
- aLogCat. View color-coded, scrolling (tailed) Android device (logcat) logs directly from your phone. No USB, adb, or emailing necessary.
- adbWireless. adbWireless enable ADB wireless connection to connect to the phone as if connected by USB.
- Titanium Backup. Backup, restore, freeze your apps + data + Market links, even protected apps.
- Android Scripting Environment. Scripting Layer for Android (SL4A) brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device. These scripts have access to many of the APIs available to full-fledged Android applications, but with a greatly simplified interface that makes it easy to get things done.
- touchqode. View and edit source code on Android phone. Touchqode is a true mobile code editor that comes with syntax highlighting, autocomplete and other features found in a desktop IDE. We support Java, HTML, JavaScript, Python, C++, C#, Ruby and PHP.
- aGrep. aGrep is a open-source text search program like a “grep”.
Monthly Archives: February 2011
Movable Type Printing Press vs Internet
Information Technology and Economic Change: The Impact of the Printing Press
The estimates suggest early adoption of the printing press was associated with a population growth advantage of 21 percentage points 1500–1600, when mean city growth was 30 percentage points. The difference-in-differences model shows that cities that adopted the printing press in the late 1400s had no prior growth advantage, but grew at least 35 percentage points more than similar non-adopting cities from 1500 to 1600.
Exploiting distance from Mainz as an instrument for adoption, I find large and significant estimates of the relationship between the adoption of the printing press and city growth. I find a 60 percentage point growth advantage between 1500–1600.
The computer equipment manufacturing industry comprised only 0.3 percent of U.S. value added from 1960–2007, but generated 2.7 percent of economic growth and 25 percent of productivity growth.
Hertz, No Moore
More than half of all computers aren’t computers anymore. Smartphone shipments surpass PCs. The transition is done. But in this new era of mobile personal computing, the limiting factor is not the CPU, it’s the spectral efficiency of the whole mobile environment, experienced as the user goodput. At least 1MBit/s is needed to get an optimal browsing experience on a mobile phone.
As in Moore’s law, the growth is exponential, but with a rather less pronounced slope. And underlying both, economic models that serve as a self-fulfilling prophecy and a barrier of what technology could achieve in the future: the costly deployments of mobile networks, financed by debt, parallel those of semiconductor chip fabrication plants that Rock’s law models as constraints to transistor integration limits.
Microkia, in Search of the New Wintel
Nokia retreats into its manufacturer roots and gives the keys of his kingdom to Microsoft: Symbian, purposely created to hold Microsoft back from the mobile space, much to the ire of Gates, is gracefully terminated by a Microsoftie in exchange for a promise of a better mobile operating system in the future and hundreds of millions of dollars in kind. The transition will be so hard that Nokia will not provide any forecast for the full year and the stock has fallen 15% on a day: a master deal for Microsoft, a disaster for Nokia. No software, no soul.
The economics underlying mobile operating systems and their adjacent ecosystems are very different from the PC space: more complex, faster releases, costlier product recalls, energy constrained, lower margins.On a typical PC, >30% of its price goes to Microsoft; on a smartphone, less than 7%. That is, the incentives to get a perfect OS release from day one are much lower, and that for a company that is used to deliver good software after 2–3 versions. Only the much better post-handset-sale incentives of monetizing mobile apps through advertising can align the two companies to succeed on this new deal, except that this model is very disparate to what Microsoft is used to.
Intel’s Mobile Backdoor?
On a modern smartphone, the screen consumes more power than the CPU (>3x), so the power advantage of the ARM over Intel chips gets diluted, even taking into account that differences in use between users are huge, rendering power consumption characterization impossible (see Exhausting battery statistics). That ARM chips are so energy efficient it’s a history of unintended consequences and path-dependence: the packaging of the first ARM chips were made in plastic to keep costs as low as possible, instead of using the more common ceramic packaging, as in Intel chips, so they had to keep the power dissipation below a watt. And now, it’s also path-dependence what keeps Intel outside the mobile world: everyone will keep on using ARM chips, even if the power efficiency advantage gets irrelevant.
Will Intel dare to change from being a vertical integrated manufacturer to an open licensor, just to beat ARM, even if that means lower profit margins? Or will they risk seeing their ISA get less executed all over the world?
Symbian: New Tools, Lost Horizons
Symbian C++ programming has the steepest learning curve ever. Just before Stephen Elop burns the platforms, or not, let’s remember the tools introduced by Nokia that tried to reduce it, with mixed results:
- fshell is simply the most useful multi-purpose tool for the Symbian environment: the equivalent of bash + telnet + rlogin + a POSIX-like set of command-line tools. It will drastically reduce your compile-upload-debug cycle.
- Flowella will help you to quickly create mock-up prototypes for market research purposes.
- Qt Creator is Nokia’s biggest bet to save Symbian. Best suited for applications in which 80% of the code involves GUI tasks, to speed up development efforts. Unfortunately, few are the smartphones that have pre-installed support for it and Ovi isn’t distributing Qt apps for Symbian^3.
- Start with Open C/C++ if you are not proficient on Symbian C++ and don’t want to know why there are dozens of classes for strictly the same things.
- Symbian’s source code, which was the biggest open-sourced project ever. Huge but very well commented: if your application keeps on crashing and you think it should work, trust yourself, the bug it’s in the kernel and the source code will help you to track it down.
What I’ve Been Reading
- [amazon_link id=“1593156456” target=“_blank” ]Mobilize: Strategies for Success from the Frontlines of the App Revolution[/amazon_link]. Centered on the iOS platform, it’s a good guide from an experienced marketeer on how to profit from the land grab that is mobile application development. A more quantitative approach would have fit better. Very useful.
- [amazon_link id=“0399535934” target=“_blank” ]The Phone Book: The Curious History of the Book That Everyone Uses But No One Reads[/amazon_link]. A history of the impact on society of the phone book: it was as important as the Internet is today, introducing a whole new way to relate to the world. Just like now, if you weren’t on the phone book, you didn’t exist. Déjà vu all over again.
- [amazon_link id=“0321549252” target=“_blank” ]Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection[/amazon_link] Written in an academic way, but full of practical examples at the same time, you’ll love this one if you, like me, write meta-code, code that does funky things to other code. Loved the “Dynamic Watermarking” and “Hardware for Protecting Software” chapters.
- [amazon_link id=“0201038048” target=“_blank” ]The Art of Computer Programming, Volume 4A: Combinatorial Algorithms, Part 1[/amazon_link]. Archimedes started combinatorics 2200 years ago, and Knuth wrote the definitive review of its algorithms. Beautiful typesetting, timeless selection of algorithms and full of examples to master the subject: a masterwork.
Doom&Gloom for MNOs: The Writing’s on the Wall
These graphs show when carriers might expect to see costs exceed revenues, based on a new Tellabs study. Currently, stock markets don’t reflect these predictions, with Forward PE ratios at about 10.
Important assumptions of the underlying model are: a traffic growth of seven fold by 2015 for both voice and data combined, with a revenue decline per gigabyte of 80–85%; and data transport using only GSM/3G technologies (HSPA/HSPA+), since LTE will not be widely deployed by 2015. There also are some questionable assumptions: a flat-rate pricing model (telcos will lobby their way out of this trap) and a high percentage of data offloading onto indoor networks, a key assumption of the model, being a big unknown.
Mobile telcos will experience massive profit compressions in the future, redefining the value chain that has been in existence for almost two decades: network equipments and mobile terminal manufacturers with almost zero profit margins, whilst MNOs enjoyed high margins. Profits are migrating toward new smartphone services, but that it’s a history for another post.
New Theories for Partition Numbers
Cloud (computing) on Fire!
Cloud computing is badly broken, by default. And it won’t be solved anytime soon, no matter what server-side countermeasures or architectural patterns are deployed. Blame JavaScript, or rather, blame its abusers. JavaScript sandbox and security model wasn’t designed for the current cloud-computing architectures: sure, the Same Origin Policy prevents scripts running on pages originating from one site to access to documents, methods and properties from other sites, but this same policy is not valid for the script themselves. Furthermore, JavaScript is a dynamic, global language: therefore, scripts from different sources in the same webpage have equal access rights to the webpage and to each other, opening the possibility to change each other’s functions and variables.
Attack methods and vectors are plentiful: XSS, CZS, CSRF and DNS attacks, among others. The chain is too long and too weak, the responsibilities are too distributed: cloud-computing architectures are not trading off CAPEX for OPEX, they are trading off CAPEX for OPEX AND security. The modern cloud computing movement got started when Amazon internally validated the architecture and started offering it to the public via AWS, but extending that to the browser with JavaScript from multiple sites within the same webpage is going too far.
Compromise google-analytics.com and not only the whole web are yours, but the whole privacy and documents offered through services like Google Docs and intranets all over the world.
Julian Assange, The Hacker Formerly Known As Proff
- marry (v.)
- c.1300, from O.Fr. marier, from L. maritare “to wed, marry, give in marriage,” from maritus “married man, husband,” of uncertain origin, perhaps ult. from “provided with a *mari,” a young woman, from PIE base *meri- “young wife,” akin to *meryo- “young man” (cf. Skt. marya- “young man, suitor”). Said from 1530 of the priest, etc., who performs the rite.
In my early teens, I remember compiling and using the zapper marry.c, a little tool to clean your entries from utmp/wtmp/lastlog/acct/pacct UNIX files. It was written by Julian Assange, who also wrote strobe.c, the first open source port scanner. I wonder to this day why he chose such a name for a zapper, doesn’t that deserve a Wikileak?




