Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

jfruh writes "One of the biggest challenges Microsoft has faced with its Windows Phone platform is that it's far behind in the apps race against iOS and Android. One way to close the gap is to lower the barrier to entry for new app devs, and Microsoft has done so with Windows Phone App Studio, a hosted service that lets you build applications without actually writing any code. The description of how App Studio works may leave you wondering how useful or exciting the apps created will be, but a surge of developer interest during the current beta program has surprised even Microsoft with its scope."

Haven't used the App Studio - remember that Myst was written in HyperCard and there's plenty of other examples in that vein.

While in an entirely different class, LabVIEW is a graphical programming language which is quite powerful (true language / direct compiler). Simple/easy to code/read doesn't mean lousy or weak software. Besides, quality is usually pretty unrelated to code (other than some cases of performance).

You are right if the LabVIEW programmer is a moron and hasn't bothered to learn how to use it well. Proper design and architecture allow one to create quite nice code that does not turn into a "mega evil rats nest of doom". For, you see, it is not the language that is at fault but rather the user of that language. Isn't there a saying "It's a poor musician that blames the instrument"?Just as you can write bad code in LabVIEW, you can write bad code in C, C++, Java, etc. The problem with bad LabVIEW code

Quite right. Any programmer in any language who puts scrambled lines of code into a single subroutine (i.e. "mega evil rats nest of doom") deserves to work the AOL geriatric IT help line for a week. You don't have to get very far into the documentation before sub-.VIs, event triggers, and state machines start becoming strongly suggested.

No, they don't. Apple killed Hypercard. They sold the tool to Claris but kept the devs at Apple. Then they decided Mac OS would ship with a Hypercard player, but you had to play Claris to be able to develop on it. When they bought Claris back, they tried to make it a QuickTime extension. Then they just stopped developing it. Not because they didn't think it was good; they just didn't know how to market it so they killed it.

No, they're missing the boat, as usual. They need to port PHP to their craptaculous phone, then they'll have all the apps they could ever dream of.

The market will become flooded with Windows Phone "Developers" just as the Web space now is, then the inherent technical debt will increase past the point of breaking and millions, nay BILLIONS will be spent trying to maintain and extend all the in-house apps clueless businesses have written.

And that means more money for me when I come in and fix their problem with clean, maintainable (and noob-proof) code. *cackle*

Not entirely sure what you specifically mean by "noob-proof code", but the chances that this code is actually less maintainable are high. Never underestimate the power of a manager to be convinced the $25/hour talent can perform at a $75/hour level. That $25/hour talent is going to break things during maintenance no matter how high-quality the code was to begin with.

I agree there's a bunch of ugly code out there (no bigger red flag in my book that poorly indented code), but it doesn't matter to a beginner

If you're creating an application that hasn't existed yet, you're instructing the computer as to how to do something, i.e., you're programming, i.e., you're creating code in one way or another. Either that, or the environment is so limited as to make the "write apps" part completely meaningless.

The same could be said about machine language instructions. You aren't really creating new ones, you are just putting them together in a different order with different values loaded into the registers.

I'm looking at it from the other side. I think of these visual languages as nothing but abstractions, done at a layer so high that they can make it hard to define your problem with enough precision to do the job well. Additionally, because they are so many layers removed from the hardware (often hiding behind a network interface as well as thick layers of XAML, DOM parsers, WPF, IL, bytecode, frameworks, OS APIs, libraries, and HALs), performance either suffers or you're forcing your users to spend extra

It's not really a contradiction, it's just adding a layer between the dev and the actual code. Think WYSIWYG web editors that have been around forever. You're still building a website, it's just showing the computer what you want and letting it generate the actual code. It's really not a lot different than coding in C# and then having it compiled into binary... you're just creating the program at a level even further away from what the computer will actually run. Of course, like the WYSIWYG web editors, the code will almost certainly be sloppy and inefficient compared to coding it yourself, but it opens up the market for basic apps to people that otherwise couldn't/wouldn't make them.

Think WYSIWYG web editors that have been around forever. You're still building a website, it's just showing the computer what you want and letting it generate the actual code.

Of course, like the WYSIWYG web editors, the code will almost certainly be sloppy and inefficient compared to coding it yourself, but it opens up the market for basic apps to people that otherwise couldn't/wouldn't make them.

Yes, because we really need to "open up the market" for more stupid, sloppy, poor designed, pointless, shitty apps.

The problem is that nobody knows what that "actual code" is supposed to be. Do you mean the computational process? Because there will always be a layer between the programmer and the computational process, even if you program in machine code. Every time someone finds a new abstraction to programming, people will come out and start shouting "that's not programming, that's cheating!", but there is no free lunch. That reminds me of the wonderful “Now that we have Cobol, can we get rid of all those beatnik programmers?” quote, courtesy of US military, 1960s or so. No, you can't, it's still programming, even if you manage to do more work in less time, it's still qualitatively very much the same activity.

Actually, some WYSIWYG editors like Amaya can produce standards-compliant code these days (since Amaya is the W3C's own tool, I would sure hope it produces compliant code). I use Amaya for creating web-based documentation. I initially code the document template by hand and then use the WYSIWYG tool to add the actual content because doing all that by hand is downright tedious. When I'm writing, I like to focus 100% on content without having to worry about the HTML.

Dude I think this would be kinda hard to call "creating" when you are just using prebuilt snippets and throwing them together. It kinda reminds me of the way guys would go to some VB website back in the day and just copypasta pieces of code to "make" something. If this works like that then half assed and buggy will be pretty much standard as I've never seen anything made with snippets that was worth a crap.

Dude I think this would be kinda hard to call "creating" when you are just using prebuilt snippets and throwing them together.

You're doing nothing else when you're programming. Either you're using prebuilt snippets of high level code (for() loops, while() loops, basic math functions, function call site sequences in callers, function prologs and epilogs in callees - twist it any way you like, but all these are "prebuilt snippets"), or you're using prebuilt snippets of low level code. You know, the machine instructions are prebuilt snippets of lower-level operations, too.

You're making the (IMO incorrect) assumption that programming is the only creative activity taking place when developing an app.

For me, the more creative part of designing an application is the actual content, the look and feel, and how the app actually works. To suggest that someone with these talents can't be equally creative as another person who can write code seems naive.

I'm one of these people who used to take snippets of VBA code and insert them into Excel and Access to improve my workflow and make b

If you're creating an application that hasn't existed yet, you're instructing the computer as to how to do something, i.e., you're programming, i.e., you're creating code in one way or another. Either that, or the environment is so limited as to make the "write apps" part completely meaningless.

I suspect that Microsoft is, at very least, looking to make it trivial to write those 'Hey, I'm just going to wrap my website in an app for no reason' apps that are so horribly common these days. Other iOS and Android are rotten with the things, and Microsoft should know (based on what their customers do and have done with Access and Excel) how much demand there is for something that lets a relative noob slap a frontend on a database of some description.

A surprising number of apps in the android store are little more than a collection of static pages, with the odd calculator or flashcard functionality thrown in. Stuff that should be fairly easy for a GUI based editor to handle. So the end result is that this is just making it easier for Windows to have more apps like those already available on other platforms.

Given the number of 'apps' that are almost entirely just the creator's mobile website puked into a platform-appropriate application package, I suspect that the similarity will be very substantial indeed.

You can make a halfway decent website. Anything that is even slightly complicated requires code. And once you involve a database and dynamic content, you're deep into a territory where you really want to get it done by someone who knows what the fuck he's doing.

And especially the casual market needs quality products. Easy-of-use doesn't come from a shoddily thrown-together piece of crap, it comes from polish and HCI design and usability testing and all that other professional stuff.

I remember Nokia launching a bit of software like this for Symbian back in its dying days; you could use it to make a mobile-friendly, self-contained version of any RSS feed you felt like pointing it at. That was in the days when mobile-optimised sites were just starting to become A Thing and few of the optimised sites were intended for 2.6-inch QVGA displays. Probably came out of them.

I suspect that -- other than wiring up GUI elements to events -- there aren't a lot of interesting things you can do with a GUI-based code builder that you can't do more efficiently by writing actual code.

I gather that the idea is to lower the bar for "Hello World"-type apps, but once that's done, I have to wonder: are any serious app developers using this as a development bed for complex apps?

It's not about efficiency, it's about ease of use. A massive number of apps out there are little more complex than the flashcards or calculator programming exercises used in every Programming 101 class. It's not designed to completely replace coding or be more efficient; it's designed as a way for inexperienced people to develop simple apps, which in turn inflates the number of apps available on Windows.

Slashdot is not the intended userbase for a program like this. The intended userbase is teachers that wan

Heh, I was almost starting to believe that Microsoft was working towards to shaking the "insecure, virus-infested, crash-prone, blue screen of death" reputation that they've built up over the years....

I suspect that -- other than wiring up GUI elements to events -- there aren't a lot of interesting things you can do with a GUI-based code builder that you can't do more efficiently by writing actual code.

And by the same token, if you can give people a good enough toolset, you have no idea of what they'll be capable of writing.

Code-less visual programming has been something people have been talking about for a long time, and I've occasionally gone looking for something in that family but never actually seen

One thing not called out is that you can actually download the Solution File once you are done (also, you also have the option to deploy to devices outside of the app store). So, you can use the App Builder for prototyping and then get the solution code when you are ready to take your app further.

If you check the unity3d forums, you will see a few hundred people that have a great idea for a game and it always reads sort of like this:It's like, so basically... it's Skyrim for iOS/Android. So who wants to code this for me? Obviously since I am the idea man I will keep the MILLJIONS of dollars it will make, because writing code is easy, I just don't have time to learn because I am too important or have ADD. I did find some great free models on turbosquid though, just need someone to make them move.. what's it called, rigging? Oh and texture too. Since I did the hard part of finding these models, that last part should be really simple, but I'll pay you out of the HUGE profits of my game.

Well Microsoft, I applaud you. You have given these idea men, these mental giants, a fertile ground of milk and honey! We lowly coders and artists will sorely miss them in our forums, but wish them bon voyage on this, their great and noble endeavor!

check the top free apps [google.com] - none could be made without codeit looks like MS wants quantity instead of quality - no wonder the only informative thing TFA has is the number of users and projects.

This new tool solves the wrong problem for MS. With a large number of apps, there will be some useful ones. This tool only pads the number of useless apps for Windows Phone so that MS can report a high app count to lure new customers. As far as I know, Windows Phone is still missing important apps that iOS and Android have (Instagram, etc). Some apps that do exist (Facebook, Spotify, Netflix, Audible) are behind the counterparts in other platforms in terms of features.

I don't know. It could also be a good gateway into coded programming for a new Win8 developer. It seems like you could create a basic layout for an idea you have and get some content more or less slapped down, then open up the code it spits out and start editing from there. Sometimes the largest barrier for amateur developers is getting started with a new platform.

I make android apps as an amateur hobbyist and it peaked my interest. Of course, I still don't really want to install windows 8 (stupid requireme

Oh gawd, this is causing flashbacks of FileMaker Pro programming...I want to poke my eyes out with rusty daggers, and cut my right hand off with a drill press...

(For those who have had the pleasure of never being forced to "code" in FileMaker, it's a "database" programming environment similar to, say, MS Access in that it's a self-contained relational DBMS; however, adding "code" is done by using your mouse, with relatively few control structures. It's not free-form coding, it's predefined lines in a list

I'm curious how far back those flashbacks are. Because honestly, Filemaker Pro scripting back in versions 3-6 was probably appropriate given the rest of the database relatively limited capabilities. It really was a fairly well balanced environment. Easy to get a simple attactive database going even for relative amateurs.

Starting in version 7 though, and added to incrementally through 13, the system has grown immensely more expressive, with new script steps and options, variables, parameters, event handling

One of the big drawbacks of Apple is the idea that you should be able to easily use apple products to promote creativity, as long as the creativity doesn't involve creating an "app" or programming an Apple product in any personal way. At that point, you're shoved into massive restrictions, high cost, and weird programming languages to discourage kids and novices from coding. Android is much more open with their philosophy, but their tools are hardly user friendly for the curious would-be programmer. Microsoft is being smart here and sticking with their roots. While Apple diverged from what made them a big company in the first place (the openness and flexibility of the Apple II), Microsoft seems to be returning to their core philosophy of "Developers, developers, developers" of all types, shapes and sizes. Remember that Microsoft got its start with BASIC for beginning programmers, and one of their biggest products of all time has been Visual Basic--a tool for simple programming. Allowing people to easily create smartphone content for themselves is one easy and smart way to differentiate themselves from their competitors. It seems that after flirting with the idea that they must copy Apple, Microsoft has hopefully decided to do what Microsoft does best--make semi-open systems that are easy to program and customize for users.

One of the big drawbacks of Apple is the idea that you should be able to easily use apple products to promote creativity, as long as the creativity doesn't involve creating an "app" or programming an Apple product in any personal way. . .
Microsoft seems to be returning to their core philosophy of "Developers, developers, developers" of all types, shapes and sizes.

So MS development tools work on Linux? What do you mean I have to have Windows to develop for MS? But the professional develop tools for MS (Visual Studio) is free with Windows, right? Oh I can get a free version that I have to download but it's not the pro version.

It seems that after flirting with the idea that they must copy Apple, Microsoft has hopefully decided to do what Microsoft does best--make semi-open systems that are easy to program and customize for users.

Flirting? They are still trying to emulate Apple but doing it poorly. Surface? The new management structure is eerily similar to how Apple is organized.

The best way MS can increase the number of apps available on their platform is to allow Sideloading. Right now the biggest problem for a hobbyist developer is not the lack of dev tools (VS is one of the best dev platforms), but the fact that I cannot run an app I make on my phone without paying MS an annual fee.

Allow hobbyists to write and run apps on their phones, and they might create something which they feel can be sold on the app store, at which point you can start charging them for a dev license. Bu

Unless they changed things recently, getting a developers license for Windows Phone is trivial and cost free. Yes, you still need to apply for a license for sideloading, which is obnoxious, but it's only a minor hindrance.

As of a month or two back, you can use any "Microsoft Account" (FKA Live account, FKA Passport, etc.) to dev-unlock a WP8 device. It's restricted to only two sideloaded apps at a time (I guess they're paranoid about piracy?) but that's enough for development if you don't work on too many projects in parallel (and if you do, then you can get the "normal" license, which was down at $19 for a while but may have gone back up at some point).

You do still need the dev tools, which is a rather big download and only

Is is certain that these apps are meant for the app store? When Android had their app inventor program going, they specifically prevented those apps from going to the app store. The limitation could be removed by clever hacking of the apk, but Google really wanted these programs to be of very limited distribution.

Flood the app store with thousands of shitty apps so no one can find the ones that are actually useful. I wonder how well that will work for them.

It's really not so different with iOS, it's just that there's hundreds of thousands of apps so even if there are hundreds of thousands of shitty apps the top 1% is very good and still represents thousands of useful apps.

This was Microsofts strategy for a long time: Developers, Developers, Developers. (Yet another thing that Apple stole?)

but a surge of developer interest during the current beta program has surprised even Microsoft with its scope."

Back when Windows Phone 7 was new, Microsoft released the number of developers (ie, number of free downloads for Visual Studio for WP7). It was something like 20 million downloads, if my memory is correct. If that number were actually representative, it would mean that there was one developer for every four users or something.

They released the developer number because the sales numbers were so bad they didn't want to release those.

Yes, creating software without having to know shit about software development has been the wet dream of the business monkeys at MS ever since they took the company over from the geeks.

But of course it doesn't work. Never has, never will. If you don't feel like putting up with those weird geek types who don't follow your MBA pseudo-logic and bullshit bingo, then get out of the computer business into something where actually knowing anything doesn't matter. Like, say, banking.

Visual Basic was the nail in many coffins as it made building applications "dead simple". I am shocked that they lost their way with Zune and, by extension, Windows Phone. Now, I am happy with the idea of.NET however to create applications there needs to be a layer of simplicity added to allow someone from a non-technical background to create a really simple application. VB6.

Have you ever seen the applications people build around MS Access back in the day? It was, I am not exaggerating, a nightmare. You could really have bad dreams about that sort of thing, because it felt like what getting lost in the woods at night feels like.

The Visual Basic 6 monstrosities people used to cobble together back in the '90s were just as bad.

There was plenty of interest, but Google decided to listen to Steve Jobs's advice and "shut down" anything that wasn't "core" to their operations. Why someone would take advice from a competitor that has promised to "bury you" is beyond me, but they did. App Inventor was quite popular. It's main limitation was the inability to create "multi form" screens. Otherwise it was pretty powerful and useful for a point and click interface.

Indeed. I have even come across old Lotus Approach databases. FileMaker is still used by some companies, as well. Microsoft will be able to capture the non-expert enthusiast to try something. Those that really like it will step up to the full SDK and get more advance.

I had a horrible experience lately. I was at the dealer to get an oil change. They have these nice imacs at every station. I took a look at the screen while after walking away, to discover that they were using filemaker pro, along with a remote desktop connection to a Windows terminal server that had a different dos program running. Looked great and modern from a distance...

Even Microsoft tells their customers Access is crap but as long as people continue to buy copies they keep updating it! I can't even get one of our groups to use the free version of MS SQL because Access is "easier" despite the fact we will not support them. If the 1 programmer they have leaves their project is toast.

I know this very exact situation is in a canadian government office, and with major content management, you would think this to be the most critical thing to get away from, yet they stick with Access and the 1 guy who knows it all....god save us if he dies tomorrow

Bingo. Why would companies pass up the opportunity to code for a new platform and generate revenue? The revenue that they would bring in from a small number of customers isn't enough to pay for a programmer and support the app. Nothing personal against MS. It's just business.