The Android Gets Its HyperCard
theodp writes "Steve Jobs & Co. put the kibosh on easier cellphone development, but Google is giving it a shot. The NY Times reports that Google is bringing Android software development to the masses, offering a software tool starting Monday that's intended to make it easy for people to write applications for its Android phones. The free software, called Google App Inventor for Android, has been under development for a year. User testing has been done mainly in schools with groups that included sixth graders, high school girls, nursing students and university undergraduates who are not CS majors. The thinking behind the initiative, Google said, is that as cellphones increasingly become the computers that people rely on most, users should be able to make applications themselves. It's something Apple should be taking very seriously, advises TechCrunch."
and that is because as soon as Apple does something different the competitors tend to copycat.
Self proclaimed wannabe geek. You know how it is. Most of us who read this stuff probably fit in that category.
... to contradict the previous story. Power to the people!
This reminds me of the early 1990s trend of "programming for everyone", particularly Macromedia's Lingo in Director. Languages and environments that start this way quickly realize that the end products would be ever so slightly more appealing if they were more flexible. And flexibility is the end of simplicity. The 1.0 of this language is going to be fine for a few intrepid schoolgirls, but soon they're going to have to add basic programming concepts and structures which will leave most people scratching their heads. Haven't we already seen this dramatic arc with Director and Flash?
Go read some bible: nubible.com
This is what is great about Google they offer different services to compete with Apple. Plus the whole point of creating your own apps made easy is just really cool and a great touch by Google. I think if this catches on this could be a big selling point for Google.
http://www.thetechnologygeek.org
Can we just have a "Google" section already? This might as well be filed under Microsoft, with references being made to "Developers, Developers, Developers!"
I don't think I understand you correctly: nobody forces you to install those millions of fart-apps! If they find their audience among the teens, why not? Do you really notice that the whole web is literally overwhelmed by pages of similar (i.e. non-existent) quality?
The problem is not that Android Market will be flooded by low-quality apps. The problem is that Android Market has pretty rudimentary app search and filtering capabilities to reduce signal to noise ratio. Sorry for the irony, but Google must build a decent search engine for Android apps.
I took a look at the demostration videos and whatnot, and the user interface seems to be a cross between XCode's interface builder and MIT's Scratch. The code is written by dragging "puzzle pieces" into place, just like in Scratch. However, I assume this uses Java rather than Squeak? Scratch is kind of a lot different than HyperCard, but, you know... whatever. If only my BlackBerry Storm hadn't turned me off smartphones forever, I might actually be inclined to give this a shot.
>and that is because as soon as Apple does something different the competitors tend to copycat.
I thought this was a story about Google doing something differently than apple.
Some of my favourite people are from th US; Vonnegut, Chomsky, Bill Hicks.
just give us proper scripting with proper exposure of the internals to the scripting language
like hp calculators have RPL.
i see stuff on the android market that would take 3 lines of scripting to accomplish... yet they are presented as "apps".
Looking for people to chat about multicopters, coding, music. skype: gtsiros
It is like Slashdot. If you want to look at everything at -1 you can. Naturally you will see a bunch of crap.
For android applications you can always sort things by how popular they are and find the creme of the crop.
Who knows, you may be surprised by what application may be developed by a high school girl. To ignore the potential creativity of a vast swath of society is foolish. Maybe the killer app is one that targets high school girls.
Tisha Hayes
A simple App maker like hypercard was? It is supported on Windows, OS X, and Ubuntu. It also works with both Java 1.5 and 1.6. Way to go Google! You may have finally hit upon a great way to outcompete Apple in the mobile space. I just hope you're working on improving the Android Market in a big hurry.
i'll just reply to you, since many others have already replied to me saying search etc..
I dont care if people want fart apps, or even milions of them, but if, when browsing an app-store, i end up wading through thousands of pieces of junk to find one or two actually good apps, that is annoying. I find this already happens a lot on the apple app-store, the mechanisms for searching etc. simply arent 'fast' enough for my taste, i spend too much time scrolling or whatever.
truth be told, i am very curious about android and the android market, i have no doubt that as soon as my contract is up for renewal i'll get a nice android phone
People, what a bunch of bastards
It's not that different from the Appstore on the iPhone, I'm sure most of those apps are junk as well. People tend to browse the most recent and popular lists primarily to find things. As that'll find most of the good ones, also if one has a specific need in mind, Google helps with that as well.
This is a situation where, I suspect, Apple will not follow unless placed under real pressure.
Look at Apple's release model, particularly for iDevice stuff, it is the very opposite of "early and often". They are totally willing to take flack(cut and paste, MMS, multitasking, etc.) for as long as necessary in the service of delivering what they consider to be the "right" solution. Obviously, they do do iterated development as well(just ask anybody who had to endure OSX before about 10.3...); but Apple, in the present day, has a strong bias against "good enough and a lot faster/cheaper" type stuff.
Releasing an environment explicitly designed to lower the barrier to entry for application creation would have an effect precisely contrary to Apple's design aesthetic and integration philosophy. Consider the analogy of MS Access in the context of Win32 desktop software. On the one hand, the existence of that application is probably responsible for the existence of more utterly rubbish "applications" than just about anything else on earth. On the other hand, it has allowed millions of people who are basically nonprogrammers to hack together "good enough" applications to solve the weird little application-specific problems that are important to them or their business, and which are too small to pay for a real developer.
Google's "App Inventor" will very likely have similar results: large numbers of people who would otherwise be unable to create any software will create bad software that is "good enough" because, while bad, it is precisely tailored to problems that they care about. Apple could, in all likelihood, create such a system if they were so inclined; but there are two reasons to suspect that they won't(again, unless they find themselves under really heavy competitive pressure, which they haven't yet. Android has grown phenomenally; but mostly by sniping geeks, eating the WinMo and legacy-Palm markets, and pretty much crushing the "high end dumbphone", not by cutting the iPhone user base): One, Apple currently has the substantial majority of 3rd party developers, and many of the ones considered to be doing the best work. Two, "good enough" makes Steve cry, and the programs that will come out of any bar-lowering super-simple application development environment will just ooze "good enough" from every pore...
Keep in mind that among the flood of horrid homepages with purple backgrounds, jumping frogs, blinking stars and background MIDI tunes, there also emerged hundreds of thousands of highly valuable niche Web resources created by highly motivated nonprofessionals ... and Google figured out a (community-powered) algorithm for finding the good stuff.
The two strategies are not mutually exclusive, and I think that it is fair to say that they engage in both.
Because hardware cannot be patched, any feature delay(whether a legitimate delay caused by having a fairly small engineering team, or an instance of cynical milking) tends to look and feel like milking, and have similar economic consequences.
With software, it is harder to argue that there is a cynical economic strategy at work; because (with iPhones) software upgrades are not paid for, so the delay has no profit, only a PR cost. They might make a few bucks off the iPod Touch users; but I'd be shocked if the money made by nickel and diming them is worth a delay that might reduce the number of comparatively high-roller iPhone users they have raked in and locked into contract at a given time. The only aspect of their software strategy that is arguably "milking" is tying relatively trivial features of their OS bundled applications to OSX upgrades, in order to encourage people who don't care about APIs, or wouldn't know one if it bit them in the ass, to update anyway.
I'm sorry, the app store is already flooded with developer who are unable to create software.
... is the fact, that the guy behind this project is Harold Abelson, author of Structure and Interpretation of Computer Programs! He described LISP "picture language" in the book as a useful learning concept. He also "...directed the first implementation of LOGO for the Apple II" which seems interesting in this case.
I think Apple's thinking is that for simpler development, you can use HTML5. They actually have an already existing tool separate from XCode, that lets you pretty easily design a nice UI in HTML5 - it's called Dashcode.
It does require you install the developer tools (which are free).
That said I applaud Google for this effort, perhaps it could become a new standard for introductory programming classes in gradeschool/highschool.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
"high school girls" Why the fluck do they do this? Why pick "girls" or "boys" don't they think we can think?
It's not a matter of whether or not women can think. Rather it's about exploiting the social trends and biases that result on gender disparity in the programming industry. Today, a girl in high school is 5-10 times less likely to become a programmer than a boy in the same high school. When trying to develop a tool that caters to people with no inherent ability or experience, then, in makes sense to target girls in your study group, maybe not exclusively, but primarily. Recognizing the current trends in society and using them is not an endorsement of them, nor an implication that one gender is inherently less suited to a task. The arrangement of our society is the primary factor pushing various gender disparities in particular professions (in both directions).
Actually, as a usability expert, I really wish we were using one button mice. Well, not really. I wish Windows was designed to work with a single button mouse and that was the default type of mouse shipped with consumer systems. I'm also happy with variable-button mice which can become multi-button mice depending upon the software or user settings; but which default to a single button setup.
So, as a "usability expert", you advocate dumbing things down to a preschooler level...instead of advocating people learning how to distinguish between button #1 and button #2? Hell, even first graders can do that...ever see the "what's different" challenges in Highlights? Seriously...if someone is struggling with two buttons, they shouldn't be using a computer.
You can call that being a dick, you can call that not listening to user's problems, you can call it whatever you like....but people can differentiate between a gas and a brake pedal. They should do the same between a left and a right mouse button.
The truth is, a one button mouse setup leads to a great many usability improvements.
Source? If anything, it would make things WORSE. You would have to use the keyboard to modify how that one mouse button functions. So now, instead of just clicking the button next to one the user is already using, you want them to have to find a specific key on a keyboard to act as a modifier? They already have trouble using two buttons on the same object...what makes you think they could choose one out of 104 buttons on a separate object?
Look. I can understand what you're getting at...I just think you are way off base. Your point about tablets have some credence to them, but their problem isn't that the interfaces weren't originally designed for a single mouse-button....the problem is that tablets have no buttons. That takes time to perfect and for people to get used to. Nothing more.
Living With a Nerd
What's more is that this application will bring programming "back" the the masses.
I'm a (former) high school teacher myself, and I'm getting near jitters thinking about how fired up my kids would get if they could program their own mobile phone app with the same ease of making a Powerpoint Presentation (younger students *LOVE* making powerpoint, quite often "reward time" would be "if you're all good, I'll let you make a powerpoint about whatever you want")
Think about how amazing it would be to teach a whole year class about creating an App for your phone. "Think of a problem that needs solving" - what buttons do you need? what do the buttons have to do? now draw the screens on paper, now draw the buttons in the interface... now here's how we add "actions" to the buttons.
Want to do something that's more complex? Maybe we need to look "behind the design, at the code"
How many people here grew up on the Apple ][ or on BASIC programs for the C64?
This is fucking revolutionary! What a great time to be alive!
I'm so excited I think I just peed a little :)
So, as a "usability expert", you advocate dumbing things down to a preschooler level...instead of advocating people learning how to distinguish between button #1 and button #2?
Maybe you don't understand what usability is. It's making tasks as easy and efficient as possible. For the most part, two button mice are wasted because the interfaces are designed by someone who does not know what the user's tasks are. For example, on a machine that ships with a single button mouse, nothing stops you from installing a three button mouse. I'm using one right now. But instead of a developer who does not know my workflow choosing what two of those buttons do, and me getting to program one of them in a customized way, I get two to customize and one is preprogrammed. That also means no functionality is "hidden" in a context menu. All of it is accessible from the regular menus, which means if a person with a mouth controlled joystick needs to use the software, they can actually get to everything.
Simple DEFAULTS don't dumb down an interface. They make it usable.
Seriously...if someone is struggling with two buttons, they shouldn't be using a computer.
In my experience that would be about 30% of users in a given day, including a network security expert that is running the show for one of the largest telecomm companies in the world and has an IQ, PhD's, and enough experience to make your resume look like crap. You want to bet you never look in the wrong menu using the wrong mouse button when trying to perform tasks? I bet you do. Almost everyone does. It's just part of how people use computers these days and something we don't pay attention to.
You can call that being a dick, you can call that not listening to user's problems...
I call that idiocy and ignoring problems and blaming users for shitty usability. That would make you the average programmer then... maybe even one at MS :)
The truth is, a one button mouse setup leads to a great many usability improvements.
Source?
Umm, every book on computing usability ever published; or very nearly. Are you joking? Have you bothered to do any research on the topic, ever?
You would have to use the keyboard to modify how that one mouse button functions.
That's one option. It's called "chording". Another, more common, option is to make everything accessible without needing a second button. A third option, for more advanced users, is to add a device with multiple buttons, or enable those buttons when present in devices with a flexible number of buttons (ala magic mouse or whatever they call it).
So now, instead of just clicking the button next to one the user is already using, you want them to have to find a specific key on a keyboard to act as a modifier?
For some advanced options and shortcuts to actions, sure. For regular users, they should never need to use options only available there. It should strictly be for shortcuts, advanced options, and user programmable functions.
They already have trouble using two buttons on the same object...what makes you think they could choose one out of 104 buttons on a separate object?
The point is, if you only have one button by default, they never have to because no programmer in their right mind puts functionality ONLY in that place, as programmers routinely do for right click menus.
Look. I can understand what you're getting at...I just think you are way off base.
But you clearly haven't bothered to do any research on the topic. You just have an opinion formed out of your own emotional baggage and with no scientific basis or evidence.
Your point about tablets have some credence to them, but their problem isn't that the interfaces weren't originally designed fo
Didn't you read the headline? Google is just copying Hypercard. Forget copying the iPhone, they're copying the 25-year-old Macintosh! Hey Google, at least copy stuff from this millennium! /snark
The enemies of Democracy are
At the risk of sounding sentimental, I think lowering the barrier for entry for app building is a step toward my personal vision of utopia. "solve[ing] the weird little application-specific problems that are important to them or their business, and which are too small to pay for a real developer" is exactly how you end up with the most diverse software environment possible, and get the really inventive, out-of-left-field creatives to participate.
A higher barrier for entry certainly has not prevented the deluge of "iFart" apps.
A zero button mouse would be great "if applications were designed for it". No mouse at all would be even better "if applications were designed for it". Then we would just have a keyboard, and we all know that a computer designed for use with no mouse and a keyboard is a massive step forward, right?
Just because something is simpler it doesn't mean it is more usable. And even if it COULD be more usable, it's reliant on a near mythical level of software interface design.
I grew up with two button mice. When the third button was added I thought it was the most useful development in the world- as did my far less computer savvy parents; it gave programs a whole extra layer of context commands to play with- and context specific controls are excellent. When that third button evolved into a wheel- bliss.
I now own, by user choice, a mouse with 8 buttons (L click, R click, wheel, back, forward, and buttons tied to a program selector and to mouse sensitivity controls). It's a little excessive for most users (I doubt most users have need for more than the first 5 in that list), but it illustrates a point of how complexity is not necessarily alien to usability.