Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Targeting PocketPCs With Mono?

timothy posted more than 6 years ago | from the kissing-disease dept.

Programming 90

That's What She Said writes "I am a long time Mac user and, as most people like me, I have some particular problems with Microsoft technologies. I need to develop applications for the PocketPC platform (Windows CE and Windows Mobile), some simple data collection applications for barcode-enabled portable data terminals. Every device manufacturer on the market offer SDK's for .NET, so I believe this is the way to go. I already tried Microsoft Visual Studio and I am having serious problems using the IDE. I simply don't understand it quite well. My programming experience comes from PHP and JavaScript, where all I needed was a simple text editor and to keep my work as tidy as I could. So, it seems that a full-fledged IDE is kind of scary to me or Visual Studio is not very good for beginners. I also want to keep my costs low and free alternatives are welcome." Read on for a bit more (below) on why TWSS is thinking about Mono as a development environment, and is seeking advice.That's What She Said continues: "Through some research, I've found that my options are quite narrow. Rapid development environments are available, but cost way too much or have some terrible limitations. Also, I have not found many forums on PocketPC development that really have useful information. Google isn't helping. Some directions would be good.

I have been looking at Mono for some time and MonoDevelop seems a hell of a lot simpler to use. I even started playing with it. It runs fine on my Mac.

I tried Google again to find some information on writing .NET Compact Framework applications with MonoDevelop, but I didn't find anything. It seems Mono implements the Compact Framework, but there's not much more information about this. Except for one blog post from 2006, I didn't find anything else.

So, I ask: is it possible? Is anyone doing this with any success? Is there any problem I should know beforehand?"

cancel ×

90 comments

Unhelpful... (2, Insightful)

locokamil (850008) | more than 6 years ago | (#23409460)

I know this is going to come off as unhelpful, but if you're going to be developing projects of any complexity on Microsoft platforms, you're going to have to deal with Visual Studio sooner or later. Suck it up and learn it -- it's not as horrible as it looks at first glance, and in time, you may even come to like it (heresy on Slashdot, I know).

Re:Unhelpful... (1)

truthsearch (249536) | more than 6 years ago | (#23409710)

I liked the VB6 IDE. I hated the Visual Studio.NET IDE. I think they went way too far in trying to make it flexible and it felt out-of-control. In the first version, at least, too many visual elements would continually shift around as you changed modes. Eclipse works in a similar way, but is far cleaner and more obvious in its approach. I think it's actually much harder to learn Visual Studio these days than it used to be.

Re:Unhelpful... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23411880)

VS.NET was pretty bad. VS2005 was far better. VS2008 is excellent (the changes from VS2005 were small and noticeable).

The VB6 IDE is terrible, and I don't see why anyone would prefer it to ANYTHING.

Re:Unhelpful... (1)

That's What She Said (1289344) | more than 6 years ago | (#23412440)

I think it's very natural for a product to evolve and get better. It's not really the norm with Microsoft, but it sure is expected.

One thing I noticed, though, is that every new version of Visual Studio is incompatible with some previous technologies:

* If you want to write apps for Windows CE 4.2 or PocketPC 2002 with .Net CF 1.1, you need VS 2003;

* If you want to write apps for Windows CE 5.0 or Windows Mobile 5.0, you need VS2005, but you can't use it to write apps for the older versions of CE/Mobile;

* I still have not checked how VS2008 deals with this, but I know I can write Windows CE 5.0 apps with it.

To make myself clear: I need to target CE 4.2, CE 5.0, Mobile 2003 and Mobile 5.0. The apps will be developed specifically for one of these, but I need to be able to write apps for all of them.

Can I use only one IDE or will I need several versions of Visual Studio?

Re:Unhelpful... (0)

Anonymous Coward | more than 6 years ago | (#23412526)

Then seriously, if you need to target 4.2, you should consider using eMbedded Visual Tools 4.0. A Windows CE 5.0 SDK is available for it, allowing you to compile for all of your platforms. Of course, this means you would have to write your app in C++...

Re:Unhelpful... (3, Insightful)

FishWithAHammer (957772) | more than 6 years ago | (#23413328)

There is no good reason to write an application in C++ unless you absolutely have to.

Re:Unhelpful... (1)

cerberusss (660701) | more than 6 years ago | (#23415970)

Well, most PocketPC devices clock at most in at 200 MHz. So there's your reason.

Re:Unhelpful... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23417640)

Not really. .NET CF feels very snappy on every PocketPC device I've ever used.

Re:Unhelpful... (0)

Anonymous Coward | more than 6 years ago | (#23524878)

Unless you're writing games.

Re:Unhelpful... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23413270)

So just write the app in VS2005 using CF1.1 and download the 2003 tools for CE 4.2 compilation. They're a free download.

Re:Unhelpful... (1)

pembo13 (770295) | more than 6 years ago | (#23409794)

This is simply not true: CodeGear RAD Studio exists for those who want to develop with Microsoft's technologies

Re:Unhelpful... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23411904)

CodeGear is terrible. It's seriously not worth using. VS2005/2008 are far superior.

Re:Unhelpful... (2, Funny)

mobby_6kl (668092) | more than 6 years ago | (#23412618)

Well then, there's always Delphi 6!

Re:Unhelpful... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23413348)

You are a bad man, sir.

Qt (2, Interesting)

musikit (716987) | more than 6 years ago | (#23409466)

i don't understand how you say your a mac fan but have decided to steer away from a tool that would help you the most.

Qt has ports for windows, windows ce, mac, and linux.

if you develop nicely enough you can make the app in a mixed dev environment and just do final testing and deployment onto windows ce. who knows since the qt port is cocoa and iphone uses cocoa you could end up with a single app for all platforms.

Re:Qt (2, Insightful)

lpontiac (173839) | more than 6 years ago | (#23414398)

if you develop nicely enough you can make the app in a mixed dev environment and just do final testing and deployment onto windows ce.


If you care about your user interface, you should get the application up and running on a real device ASAP and always use it as your guide. Emulators are very handy for when you're doing a rapid compile-run-code cycle during the early stage of developing a particular feature, and debugging.

Re:Qt (2, Informative)

pjt33 (739471) | more than 6 years ago | (#23415464)

Definitely. My experience with Java (using IBM's J9 on PocketPC) is that a MemoryImageSource which repaints in milliseconds on a "real" computer takes more than a second on my PocketPC. That's not the kind of thing you want to find out in the final stages of testing.

Re:Qt (0)

Anonymous Coward | more than 6 years ago | (#23414896)

Actually, Qt 4.4 still uses carbon. Qt 4.5 however will use cocoa.

You're over complicating things (0)

Anonymous Coward | more than 6 years ago | (#23409480)

Seriously, if you can write a program using a text editor and a command line compiler, you should have NO problem using Visual Studio. Look for some tutorials online, and take a few days to get aquainted with it. VS has some really excellent debugging tools that you won't get with any other IDEs. MS has released some real crap, but their IDE is a really good product.

You admit that almost all of the devices that you've looked at support .Net, and you mention that it looks like the best way to go. Use Visual Studio, there is a ton of information online about it, and how to write for the .Net compact framework.

Re:You're over complicating things (0)

Anonymous Coward | more than 6 years ago | (#23414256)

if you can write a program using a text editor and a command line compiler, you should have NO problem using Visual Studio.
What if one doesn't use a mouse on the machine with the text editor and command line compiler? All those tutorials say "click..."

Or try Java (0)

Anonymous Coward | more than 6 years ago | (#23409538)

Re:Or try Java (0)

Anonymous Coward | more than 6 years ago | (#23409616)

Java, an already slow language for application running on PocketPC which run native code slow enough already? Sure coding to the .NET framework isn't exactly running fully native code but it will be much faster than using java.

Re:Or try Java (0)

Anonymous Coward | more than 6 years ago | (#23410400)

Java

Slow
Every time these words are in the same sentence a Sun employee cuts himself.

Please think of the Sun employees.

Re:Or try Java (1)

setagllib (753300) | more than 6 years ago | (#23411280)

Put down the crack pipe. .NET is based on the same bytecode + JIT design as Java, with years less maturity. Microsoft only created .NET in the first place because they were legally barred from "embrace, extend, extinguish"ing Java itself. .NET has its merits over Java (and vice versa), but speed is almost identical.

Re:Or try Java (1)

Shados (741919) | more than 6 years ago | (#23411352)

Except that .NET didn't need to keep a certain level of backward compatibility like Java did (since it was "new" at the time), could learn from its predecessor, and most of the system interaction is done using native components (WinForm vs Swing), on top of a vastly superior garbage collection engine.

The JIT compiler of the next iteration of java (that isn't quite out yet) is totally sick, so that probably will bridge the gap by a lot, but .NET is a speed demon in the right hands.

Re:Or try Java (1)

FishWithAHammer (957772) | more than 6 years ago | (#23411928)

.NET is extremely fast on Windows CE. Java simply is not. Go try it yourself.

Just Bite the Bullet (2, Informative)

SScorpio (595836) | more than 6 years ago | (#23409578)

Sharpdevelop supposedly supports the .NET Compact Framework: http://www.sharpdevelop.com/OpenSource/SD/Default.aspx [sharpdevelop.com]

You can also find tutorials to help get you started here: http://netcf2.blogspot.com/ [blogspot.com]

The only issue using Sharpdevelop is that I don't believe that you can use the Microsoft PocketPC emulator which means you have to keep compiling, uploading, and remote debugging your code.

Visual Studio includes the emulator and would be a good tool for you to learn. The jump from using notepad to a full IDE programming suite can be intimidating at first but it will really help your career as a programmer.

Re:Just Bite the Bullet (1)

That's What She Said (1289344) | more than 6 years ago | (#23409800)

Compiling, uploading and testing on the PocketPC is not a problem and would be needed anyway...

Because I'd be using a device with a specially designed keyboard, a barcode reader and some other niceties (or problems, depending on how you look at it), I have to test everything on the PocketPC to be sure.

I am looking at these links right now. I'll get back later when I digest all the information.

Re:Just Bite the Bullet (0)

Anonymous Coward | more than 6 years ago | (#23413288)

The jump from using notepad to a full IDE programming suite can be intimidating at first but it will really help your career as a programmer.

You know, there are plenty of alternatives besides Notepad and VisualStudio. VisualStudio is not the measure of a professional programmer. In fact, I wouldn't hire anybody who only knows VisualStudio and Notepad.

As far as I'm concerned, VisualStudio is by far the worst of the major programming environments.

Oh, that's just mean (2, Funny)

charlesbakerharris (623282) | more than 6 years ago | (#23409582)

Going after those PocketPC's with no energy like that. Wait a few weeks til they're healthy, for pity's sake!!

Mono? (0)

Anonymous Coward | more than 6 years ago | (#23409658)

I once thought I had Mono for an entire year. It turned out I was just really bored.

No (2, Interesting)

Anonymous Coward | more than 6 years ago | (#23409666)

I'm a Windows CE developer, and I doubt this would work very well, even if it is possible. Part of the point of using Visual Studio is testing your software and your deployment on the emulator beforehand so that you don't end up bricking an actual device and having to do a hard reset. Mind you, if you aren't comfortable using an IDE, I'm guessing testing and deployment aren't high on your list of priorities...

There are some alternatives:

  • - You can use the free eMbedded Visual Tools 4.0 to write the software in C++, compile it for ARM, and copy it over to a Pocket PC;
  • - Last year they had a 90-day trial where you could get a copy of Visual Studio 2005 with the Windows Movile SDK's for $10 - something like a replacement for eMbedded Visual Tools. They may still have the program, if you do a search on thew Windows Mobile website;
  • - Of course, you don't have to use C-Sharp and learn .Net - you can write your software in C++ using Visual Studio.

But really, if you're writing serious software for Windows CE, you're going to have to loose your inhibitions and learn to use Visual Studio.

Re:No (1)

nogginthenog (582552) | more than 6 years ago | (#23410876)

The other alternative is cegcc [sourceforge.net] . It should be fairly easy to create a Mac hosted cegcc.

Re:No (0)

Anonymous Coward | more than 6 years ago | (#23411196)

Sure, that's a great idea, if you want to:

- Spend hours screwing around with setting up Cygwin
- Not use a visual debugger
- Not use Microsoft's headers and any functions in any of their DLL's
- Write your windows message handler loop from scratch
- Dick around with copying your executable to real devices using ActiveSync or a flash card

Honestly, this would be a massive waste of time - Microsoft provides excellent, reasonably-priced tools for professional developers. If you can't figure out how to use them, hire a professional developer to cut the code for you.

Re:No (0)

Anonymous Coward | more than 6 years ago | (#23412890)

Last year they had a 90-day trial where you could get a copy of Visual Studio 2005 with the Windows Movile SDK'
It's 180 days now. There's one sitting on my office mate's desk.

Re:No (2, Informative)

lpontiac (173839) | more than 6 years ago | (#23414318)

Part of the point of using Visual Studio is testing your software and your deployment on the emulator beforehand so that you don't end up bricking an actual device and having to do a hard reset.


If you can fix it with a hard reset it's not a brick.

Re:No (0)

Anonymous Coward | more than 6 years ago | (#23423640)

He didn't say he doesn't use an IDE, he said he's more used to other, non-Visual Studio IDEs.

Re:No (1)

MBC1977 (978793) | more than 6 years ago | (#23429072)

"But really, if you're writing serious software for Windows CE, you're going to have to loose your inhibitions and learn to use Visual Studio."

No, he's going to have to LOSE (not LOOSE) his inhibitions. Sorry to nit-pick, but my stats homework is kickin my ass right now and I need to vent (10 Monster "BFGs" are also running through me right now, so that could be a factor too).

Debugger (2, Informative)

MrCoke (445461) | more than 6 years ago | (#23409672)

How do people debug using MonoDevelop or mono in general ? The debugger in MonoDevelop is already missing/broken for a loooooooooong time. And no, writing to the console doesn't count.

Mono can only be spread between PocketPCs by... (2, Funny)

techmuse (160085) | more than 6 years ago | (#23409692)

...kissing or otherwise sharing saliva, or by exchanging IP datagrams with another infected PocketPC. A PocketPC with Mono should be allowed to sleep for 4-6 weeks, and will eventually recover when the virus runs out of resources. Although a standard virus scanner may detect Mono, once infected, the system can not be purged, even through a reboot. However, since the virus is self-terminating, regular performance will eventually be restored.

Mono won't be much different... (1)

eataTREE (7407) | more than 6 years ago | (#23409858)

MonoDevelop is, as far as I can tell, as similar to Visual Studio as they can possibly make it, so if you don't like Visual Studio I'm not sure this is going to get you anywhere. But you don't have to use Visual Studio to develop for .NET, even if you're running Windows. You can use whatever text editor you want and then invoke the compiler (csc.exe) on the command line if that's what you're more comfortable doing.

Personally, I have found Visual Studio to be the single Microsoft product I actually like -- the 'inline' documentation is a major timesaver -- but to each his own...

Re:Mono won't be much different... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23411968)

I agree. He says MonoDevelop is good, but Visual Studio isn't. That doesn't make any sense. I wouldn't say this to mhutch himself, but it really seems like MonoDevelop is trying to be Visual Studio (which is quite a good thing, IMO).

Visual Studio is one of the very few good Microsoft projects.

Re:Mono won't be much different... (1)

That's What She Said (1289344) | more than 6 years ago | (#23412534)

I didn't say it's good. I am still playing with it. But it seemed far simpler and accessible to me.

Now, I think SharpDevelop looks like a copy of VS. MonoDevelop is quite different, from what I saw.

Re:Mono won't be much different... (1)

FishWithAHammer (957772) | more than 6 years ago | (#23413200)

Now, I think SharpDevelop looks like a copy of VS. MonoDevelop is quite different, from what I saw.

MonoDevelop is the better fork of SharpDevelop. They both are endeavoring to hold down Visual Studio and bloodily rip it off.

If you want sloooow apps, use Compact Framework .. (2, Interesting)

fingernail (915202) | more than 6 years ago | (#23410008)

I've used Visual Studio to develop a handheld app (using C# and the .Net Compact Framework v1.1) and two things struck me immediately:
(a) C# on handhelds is really, really slow. We're talking a perceptible lag when switching between screens; I had to rewrite the automatically generated code to speed up form loading.
(b) Visual Studio (2003/2005 both) is even slower. It always seemed to take at least 2 seconds to respond to clicks, and as for startup time, I was fooled several times into thinking that my PC had crashed, even after using it for weeks. It's just pathetic.
I switched to using C++, wxWidgets and SQLite for my next app on a handheld, and I'm so happy we did. BTW, both apps are targeted at handhelds with barcode scanners (Symbol), and there are C based SDKs available.

Re:If you want sloooow apps, use Compact Framework (1)

digitalgiblet (530309) | more than 6 years ago | (#23411120)

I wonder which model Symbol you are using? We develop apps with Compact Framework on Dell and HP devices all the time and have not experienced what you describe. We also use SQL CE as the database. We have roughly 1300 devices in the field and no speed complaints. We do NOT have barcode scanners on these devices, and that may be a key difference. We use the 2.0 version of the framework.

I've found C# on the devices to be no problem at all. Another post mentioned that they too used the barcode scanner and that they had to write c code to handle it and then pInvoke it. I wonder if the scanner might have been what slowed you down?

Finally, on your (b) item: are you talking about the emulator or Visual Studio itself? I find it is definitely faster to debug directly on the device. The emulator can be pretty slow.

Re:If you want sloooow apps, use Compact Framework (1)

fingernail (915202) | more than 6 years ago | (#23443552)

I was using CF 1.1 (2.0 is said to be faster, but it wasn't available at the time). As for (b), I'm talking about the IDE itself. I just opened the project in Visual Studio 2005, and it still is horribly laggy. Other developers I work with see the same issues, so it's not just my machine. I'm glad to hear your experience is different; my project used SQL CE as the database, and a simple join seems to take forever.

Re:If you want sloooow apps, use Compact Framework (1)

Shados (741919) | more than 6 years ago | (#23411230)

I've made barcode apps for Symbol scanners in Compact Framework 2, (never tried 1.1), and even though the pocketPcs we had sucked balls, the apps were incredibly snappy (they were very complex as far as pocketPC apps go, too). I also never had issues with VS2005 (2003 was awful) as far as speed go, even though I have tons of plugins dragging it down (At my last job I was using Vista with all bells and whistles on on a machine with only 1 gig of RAM, and it was still snappy!!). What kind of code did you rewrite that was automatically generated? Most of what it generates is "make an instance of control, hook event handlers, add control to form". Not many bottlenecks in that...

It did have bugs in the past that made it slower than it should, and in certain very specific situations it will go to a crawl, but it shouldn't be common place...

Re:If you want sloooow apps, use Compact Framework (1)

fingernail (915202) | more than 6 years ago | (#23443568)

The code that needed to be rewritten was the code generated by the UI design tool - I forget what it's called. I had one form with a tab control on it, and each page has multiple controls on it; it took over four seconds to load. I moved the code around so that the controls for only the visible tab were instantiated as needed, instead of having all the controls on all the tabs instantiated when the form was created. That brought the time down to under a second, which still sucked, but was usable.

Re:If you want sloooow apps, use Compact Framework (0)

Anonymous Coward | more than 6 years ago | (#23512074)

upgrade the app to CF 2.0 or 3.5. They are considerably faster.

friendly advice (1)

Xtravar (725372) | more than 6 years ago | (#23410048)

I develop barcoding applications in .NET and life sucks.

So let me give you a few pointers:
1. Visual Studio is your (only) friend most of the time, so live with it.

2. Use the barcode scanning C APIs and p/invoke them, or write in C. Most of the barcode vendors .NET APIs lag behind and suck balls. If you are targeting multiple device manufacturers, that is. It's especially helpful since then you don't need to bundle every one of their .NET DLLs with the application.

Confusion (1)

WarJolt (990309) | more than 6 years ago | (#23410256)

I don't know if mono runs on Windows CE or Mobil.

Mono is more of a framework. Sure it's got an IDE associated with it, but it's primarily an open source version of .net.

You could potentially write something for Mono and port it over to .net, but to have that intermediate step would probably slow you down. If you're on windows use .net. If you're on Linux(or other unix OSes) use Mono. Simple as that.

Re:Confusion (1)

Whitemice (139408) | more than 6 years ago | (#23415650)

You could potentially write something for Mono and port it over to .net, but to have that intermediate step would probably slow you down.
There is *no* intermediate step. Mono implements the CLR; if I create an app in Monodevelop I can drag the exe/dll over to a Windows machine with .NET... and it runs. There is no porting required.

The dumbest idea I heard today. (0, Troll)

ednopantz (467288) | more than 6 years ago | (#23410436)


In all likelihood, you will be the only person in the whole world programming for PocketPC using MonoDevelop on a powerbook.

Does that sound like a good idea?

I mean, being a slobbering anti-Micro$oft slashbot cretin is one thing, but that's just asking for troubles.

Re:The dumbest idea I heard today. (1)

That's What She Said (1289344) | more than 6 years ago | (#23412018)

Does that sound like a good idea? Well, that's what I asked, in the first place.

I was aware that I could get an answer like yours. I am reading every single post for ideas, and most of them are really interesting.

I was sure someone would rate this kind of post as a troll. But, most incredibly, I am wasting my time answering your post. Does THAT sound like a good idea?

Don't waste your time answering: it sure doesn't. It's not, in any way, a good idea...

Re:The dumbest idea I heard today. (0)

Anonymous Coward | more than 6 years ago | (#23412638)

Listen asshat, if you ask a question as ridiculous as this one, you're inviting this kind of a response. Maybe you should just leave software development to the professionals...

Re:The dumbest idea I heard today. (1)

That's What She Said (1289344) | more than 6 years ago | (#23412726)

And that would be you, I presume?

Re:The dumbest idea I heard today. (0)

Anonymous Coward | more than 6 years ago | (#23413764)

Seriously dude, in the amount of time you've spent responding to trolls, you could have written a nice ad and posted it on rentacoder.com. Really, you should consider hiring a pro for this kind of app - you'd probably get bids in the range of $1,000 - $5,000, by people who could get it done in as much time as it would take you to learn C#. Also, this kind of app is non-trivial, and not a good choice for a beginner project - especially if you have to P/Invoke out to a third party library.

Re:The dumbest idea I heard today. (1)

That's What She Said (1289344) | more than 6 years ago | (#23417220)

Yea... I was thinking about it last night. I don't know where did I get the motivation to answer trolls, when there was so many people giving good and serious answers.

My needs are not that urgent. I already have hired some developers for other similar projects, but they keep disappointing me. Most of them can't deliver the apps on time and, when they do, the interface is not well designed.

I disagree with you on the "non-trivial" part, as I see most data collection applications as a kind of crippled CRUD (Create, Retrieve, Update, Delete -- I think you know it). The classes for barcode reader access (supplied by the device manufacturers) are pretty straight forward to use and the documentation is good.

As I stated originally, my main problem is with the IDE's that are confusing to me.

Use Tcl ? (2, Insightful)

xet7 (943634) | more than 6 years ago | (#23410682)

You could use Tcl on PocketPC: http://wiki.tcl.tk/8688 [wiki.tcl.tk]

Re:Use Tcl ? (1)

Linux_ho (205887) | more than 6 years ago | (#23411194)

Don't make me laugh. /ducks

Of course.. (1)

Shados (741919) | more than 6 years ago | (#23411286)

Of course, the FIRST thing I'd suggest to a texteditor+PHP+Javascript programmer Mac user who thinks an IDE is scary is to develop for a not-quite-complete platform (::cough debugger until recently cough::), with an half baked (but with potential...still half baked for now) semi-unsupported IDE, for a port/clone of a framework where even the official version is hard to get info on... yes.....

Anyway, while I feel its stupid, most barcode scanners pocket PCs have built in tools/features/whatever that lets the scanner act as an input device for any application. A place I worked for a long time ago made a PHP/Javascript application that would read the input of the barscore scanner and then parse it on an html form. Thats really simple to do, would use your skillset (minus the fact that Pocket IE sucks balls, even compared to IE 5...so you'll have to scream at the javascript a bit until it does what you want), and you wouldn't have to deal with Visual Studio.

Of course, once you see what all your competitors (if its a product you're making) are doing when using "real" tools (be it .NET or other alternatives, though none as "simple" as a text editor with PHP), you'll be stuck rewriting it (or your replacement will, depending on your situation), just like when I was hired to replace that pocket pc web app, but hey, if your requirements are simple enough, thats your alternative.

Head First C# best intro to Visual Studio book (3, Informative)

leftie (667677) | more than 6 years ago | (#23411446)

Here's a link O'Reilly's "Head First C#."

http://www.oreilly.com/catalog/9780596514822/ [oreilly.com]

Best C#/Visual Studio book from what's in my opinion the best series of teaching books around right now.

Here's the link to free download of Visual C# Express.
http://www.microsoft.com/express/vcsharp/ [microsoft.com]

That's not a trial. It's a free reduced feature version of Visual Studio 2008.

Re:Head First C# best intro to Visual Studio book (1, Informative)

Anonymous Coward | more than 6 years ago | (#23411690)

You can't compile for Window Mobile with the free Express edition, so that's not going to be of much use in this situation. I'm sure the book is good, though...

Re:Head First C# best intro to Visual Studio book (1)

FishWithAHammer (957772) | more than 6 years ago | (#23411944)

You can't compile for Window Mobile with the free Express edition, so that's not going to be of much use in this situation. I'm sure the book is good, though...
He's a PHP developer. It's going to take him a good long time to write C# code that doesn't suck anyway.

Re:Head First C# best intro to Visual Studio book (2, Interesting)

That's What She Said (1289344) | more than 6 years ago | (#23412326)

Not really... I didn't make myself clear in the first place.

Most of experience in programming come from PHP, because that's the language that I really used to write something useful. I used to work with web site development, and I can say I wrote some very nice custom designed content management systems (very simple ones, but still I think they're nice). Just so you know, I know what a class is and I can write OO code.

I started with BASIC on a Commodore 64 in 1986, when I was 9 years old. I used Visual Basic 2.0 or 3.0 in 1992 or 1993 (can't remember) and, at the time, developed some Windows (3.1) front-ends for DOS programs. I also can write some simple C programs (a little more than a "Hello World!"), but never tried anything really fancy.

My real problem is not with the languages. I can get to understand the basics of any language, I guess.

Re:Head First C# best intro to Visual Studio book (1)

That's What She Said (1289344) | more than 6 years ago | (#23412190)

I can't mod, but someone, please, mod the parent with somenthing like insightful or interesting.

I already knew about the Express editions not working with PocketPC development, but this link to the Visual C# Express page saved my life.

On that page, there's a link to the Beginner Developer Learning Center [microsoft.com] . The tutorials are quite good and are serving me well.

Maybe I should get the courage and dive head first in Visual Studio.

Re:Head First C# best intro to Visual Studio book (1)

ksheff (2406) | more than 6 years ago | (#23512102)

But you need the professional version of Visual Studio to create CE apps.

VS and Windows - Good Choice (0)

Anonymous Coward | more than 6 years ago | (#23411536)

Dude:

Let first say that developing mobile application using Visual Studio is a piece of cake. I can't imagine what kind of hell I would be in if it were not for VS. I would also like to congratulate you on picking the most reliable and consistent mobile environment (considering your choices). My experience has been in the c#, compact framework, for the last three years and doing it for a Fortune 500 company. As the lead architect for the application I work on, we evaluated J2ME and a few others. None of them, absolutely none of them, come close to the Window's Mobile environment. Window's Mobile Environment includes: Windows Mobile (OS), Visual Studio, SQL Server CE, ActiveSync, and a collection of SDKs for barcode devices.

Now, before the freaking flame wars begin, let me just say there are some things needing to be considered:
1) Who will be supporting your application (developer skill sets needs to be considered)?
2) What is the performance expectations?
3) How reliable must it be?
4) What communication needs are required?
5) What devices must it run on?
6) What peripheral devices will be used (Bar Code/RFID)?

While the Microsoft Window's Mobile environment will offer you the flexibility to target a broad range of devices, it will be in YOUR (Y-O-U-R) best interest to limit the number of vendors and model types. Not because of the .netcf, but because of the different ways vendors implement drivers and hardware configurations.

Next, let me say ActiveSync SUCKS!!! Ok, so it is good for grandma and your aunt Betsy; but, it is crap for a corporate environment where one machine might be the host for several devices.

Lastly, let me say that you will need to be VERY, VERY, VERY, patient. Developing, testing, deploying is much slower when you are targeting PDAs.

Oh, and I almost forgot... Get a PC with some serious RAM and CPU (multicore).

Problems with English? (1, Funny)

try_anything (880404) | more than 6 years ago | (#23412410)

I am a long time Mac user and, as most people like me, I have some particular problems with Microsoft technologies.

Do you realize how this parses? "Because most people like me, I have problems with Microsoft technologies." Possible conclusions:

A) Problems with your native language portend problems with any complicated subject.
B) It was a serendipitously insightful comment.
B) It was a Freudian slip from a Mac snob.
D) Anyone who tries to read something into it has too much time on his hands.

Re:Problems with English? (1)

That's What She Said (1289344) | more than 6 years ago | (#23412596)

You just made me LOL with something I wrote...

Let's try to get this right:

"I am a long time Mac user and, like most Mac users, I have some particular problems with Microsoft technologies."

Is it any better?

Now, if you like me better now, I think my over-inflated-mac-user-ego will be satisfied.

You nailed it: english is not my native language.

Someone, please mod parent +5 Funny...

Re:Problems with English? (1)

try_anything (880404) | more than 6 years ago | (#23412728)

You nailed it: english is not my native language.

Actually, I considered the possibility that English wasn't your native language, and based on everything else you wrote, I decided you were a native English speaker. Otherwise, I wouldn't have been so picky. So, congratulations on fooling me, and armed with this new knowledge you will fool even more people :-)

Re:Problems with English? (1)

That's What She Said (1289344) | more than 6 years ago | (#23412772)

As you can see, I really didn't understand you were being picky. I found your post rather amusing, seriously...

And I have to thank you, for pointing out one of my mistakes when I decided to ask the /. crowd these questions.

Summary (-1, Flamebait)

Anonymous Coward | more than 6 years ago | (#23412414)

Waahhhhh! This C# is hard. It's waaaay harder than that PHP page I did in my high school computers course. And the IDE has all this stuff I don't need, like a debugger. What the hell is that for? Like I'm going to have bugs in my code. I just run it through the spell check in my text editor and it usually works fine.


So please, Slashdot, tell me how to string together a bunch of shitty, half-working open source projects that were never intended to work with Windows Mobile. Because that will be a much better use of my employer's time and money than spending $200 on a Visual Studio license.

Re:Summary (1)

That's What She Said (1289344) | more than 6 years ago | (#23412690)

Naaahhh! Showing my face is hard. It's waaaay harder than posting as Anonymous Coward, like I use to do since kindergarten. And this post I am writing has everything the OP needs, like an answer. Why should I bother? Like I knew how to help the poor bastard. I'll just troll anonymously and everything will just be fine.

Re:Summary (0)

Anonymous Coward | more than 6 years ago | (#23412878)

As an AC that just can't be bothered maintaining a slashdot login (never bothered to sign up!) I will defend this AC's honor!
He does have a point, (and real information which you have used other comments responding to trolls asking for). Try to ignore his personal insults and listen to his content.

(I will de-sarcasm it for you since you seem intent on ignoring its useful content due to it coming from an AC)

C# is no harder than PHP, and the IDE has useful features, like a debugger. The features would only aid you in development if you spent the (relatively short) time to learn to use them. Don't assume that you won't use the features when you learn what they are for, like a debugger: not everyone writes perfect code.

Why not just pay for VS, it isn't too expensive (relative to the (time)cost of looking at other FOSS/cheaper solutions) when the hardware you have to work with natively supports the features VS is granting you.


My own thoughts on this topic:
I have to say; after my time at Uni learning C, Java (being forced to do a single subjects on each of haskell, prolog and PHP - though we were just asked to use PHP, they didnt teach it) I have to say; that Visual Studio (2005/2008 is what I have used) are quite possibly the best IDE(s) I have ever seen.

Sure I haven't listed many IDEs, but the vast majority of my Uni time was spent in a vanilla text editor, which I feel puts me in a similar position as the OP.

Like most IDE's VS has the project management stuff I could do without; if you more or less ignore it and just use basically the built in text editor for code, you will find that it will make things about a thousand times easier. Intellisense has spoilt me rotten. The debugger is *really* powerful...

To use a Mac'ism, VS for me 'just works'. I can't even fathom what part of it you don't like, it was that simple to get started with for me.

Re:Summary (1)

That's What She Said (1289344) | more than 6 years ago | (#23413162)

Well, I really don't see all that content on his post.

I do appreciate your post, though. It's really insightful.

I know my question was not a very good one. Still, I wanted to hear from people and I dared to ask.

Thanks for your post. You're writing anonymously, but not cowardly.

A few advices (1)

evariste.galois (1205072) | more than 6 years ago | (#23412570)

Visual Studio is just great. If you wish to do something decent on MSFT platforms VS will be your only choice. Download the WM SDK and jump right to it. To create a simple GUI-enabled 'Hello World' application will take you no more than 5'. Also forget about VB, J++, C++ or whatever. C# is what u need.

Should be doable (3, Informative)

ShmuelP (5675) | more than 6 years ago | (#23412626)

A few years and two PDAs ago, I coded a C# app for my Pocket PC (WM 2003SE) using both the app and my Linux PC.

I used a port of the DotGNU project as an on-board compiler [sourceforge.net] , and I think that I used Mono on Linux. (It may have been DotGNU, I don't recall.)

I believe that I ripped the DLLs comprising the compact framework off the device, and then used that to compile when on Linux. I think that there was a switch to turn off linking against the system DLLs, and I just linked against the DLLs from the device. Once the exe was built, I was able to run it on Linux using mono (since they had implemented WinForms, I could just run it straight), or I would simply copy the exe to the device via an SD card and then I could run it from there.

I never finished developing the app, so I never got around to figuring out how to package a CAB, but that should be trivial. I know that there are Linux apps to create CAB files, so it should just be a question of finding one buildable on the Mac and figuring out what to put into the manifest.

Re:Should be doable (1)

ksheff (2406) | more than 6 years ago | (#23512144)

The CE CAB file format is slightly different than the normal CAB format used by the desktop versions of Windows, so what is produced by those linux apps won't work on a CE device.

Thank you (1)

That's What She Said (1289344) | more than 6 years ago | (#23412844)

Thanks for those who posted serious answers, even if I accidentally ego-tripped, as try_anything pointed out.

I am following the links, reading carefully and looking for more information.

It seems I'll have to deal with my shortcomings and learn how to use Visual Studio. At least, most of you told me that's the wiser thing to do.

I'll keep looking back here, searching for good answers, but I have some links to follow now.

Think of the Users! (0)

Anonymous Coward | more than 6 years ago | (#23413670)

And somewhere, a thousand users scream in agony as yet another hideous monstrosity of a user interface is inflicted on them by a web developer who thinks they already know everything they need to know about writing for Windows Mobile...

You made the right choice (1)

igomaniac (409731) | more than 6 years ago | (#23414546)

... If you spend some time with it you'll even come to love Visual Studio, particularly the debugger is worth getting to know. Knowing how to use a debugger separates the professionals from the amateurs, and the Visual Studio debugger is the best there is. If you're using C#, you can even use edit-and-continue efficiently (there is edit-and-continue for C++ also, but it's too limited to be very useful, YMMV).

BTW I'm also a mac user, but I do most of my development on windows because of how good Visual Studio is. XCode is getting there, but it still has a way to go - I don't envy the people at Adobe that had to build a huge app like Photoshop using it...

Why develop for Windows Mobile at all? (1)

daviddennis (10926) | more than 6 years ago | (#23412980)

I would think that as a Mac guy, you would prefer developing for the iPhone.

I'm developing a product for their new iPhone SDK and so far it's going better than I'd dared hope in terms of my learning the environment easily and getting up to speed. The first week was pretty baffling and then it started to come together and by the third week I was feeling very comfortable.

I was using a conventional text editor before I started using Xcode and I can say xcode seems to be pretty easy to learn, straightforward and quick.

One thing I really like about the iPhone development system is that it's a compiled language and so it runs very fast compared to other environments I've used.

While some Slashdotters like Windows Mobile, I have noticed that its market share seems to be shrinking thanks to iPhone, and certainly in terms of design and overall attractiveness there is no comparison. I checked out a Windows Mobile magazine about a month ago, and it was worryingly thin and there were a lot of complaints about it crashing and about iPhone being less versatile but a great deal more fun to use.

With the SDK iPhone will be nearly as versatile as Windows Mobile and I think WM's market share will continue to skid. If you want to develop for a non-Apple platform I'd make it Blackberry since it is similar to iPhone in that it has a large number of very loyal users.

Hope that was of interest.

D

Re:Why develop for Windows Mobile at all? (1)

digitalgiblet (530309) | more than 6 years ago | (#23414202)

Is there an iPhone with Barcode Scanner? I believe that was one of his requirements. Also you can't begin to compare an iPhone to a Symbol device for sheer survivability. Kind of like comparing a Soviet Tank and an Italian sportscar. They both are good at what they do, but what they do is very different...

For a consumer device, the iPhone is the gold standard. Of course you have to lay out more gold than I as a consumer am willing to part with, but that's just me... From a purely tech perspective it's very nice.

Re:Why develop for Windows Mobile at all? (1)

daviddennis (10926) | more than 6 years ago | (#23439042)

Darn, I missed the fact that it was for a barcode scanning system. I think some people are hard at work getting iPhone to do its own barcode scanning, so perhaps that will be possible in the future, but it's still not a ruggedized device like a Symbol.

It's actually quite amusing that Apple itself uses those Symbol devices or something very like them in their infamous chic retail stores. Must drive Steve nuts since they are impressive devices but look more like something the Army would buy than an iPhone.

With the 3G iPhone coming soon, it may be that 2.5G iPhones will get to a more reasonable price, or people will try to sell their antiquitated 2.5G phones used. So maybe you'll get your wish and see cheap iPhones soon.

D

Re:Why develop for Windows Mobile at all? (1)

bombshelter13 (786671) | more than 6 years ago | (#23444064)

It seems very likely that with the SDK, producing an application allowing the use of the built in camera to decipher barcodes would be entirely feasible. Not that I'm saying that the iPhone would solve his problem, but it would still be a neat application.

Cost (1)

jspraul (146079) | more than 6 years ago | (#23413398)

See mention of successfully porting Mono to CE here:

"How do I serve webpages from NETCF?"
http://www.danielmoth.com/Blog/2005/02/how-do-i-serve-webpages-from-netcf.html [danielmoth.com]

"2. [...]
c) Port the ASP.NET MONO implementation (not aware of any *public* project that has achieved it, but there are some guys that have done it (ended up at ~1300KB) and if they want to go public with it I am sure they will - I cannot say anything else, I'm afraid)"

If your app really is that simple and cost is that much of an issue Embedded Visual C++ v3 & 4 are both 100% free. They are also very feature-free & may thus be more to your liking that Visual Studio.

Otherwise the best way to get Visual Studio cheaply is a free copy at a local user group launch event, or the "Heros Happen Here" even that's running now (though that's only Visual Studio Standard Edition): http://www.microsoft.com/heroeshappenhere [microsoft.com]

Depending on your licensing situation, the student Dream Spark program is offering the professional version for free: https://downloads.channel8.msdn.com/ [msdn.com]

Also look at the "Spark Your Imagination" program for a great deal on not only Visual Studio, but also Platform Builder & actual hardware: http://www.microsoft.com/windows/embedded/products/spark/ [microsoft.com]

Please help suffering Mac users (1)

ruslanv (1042874) | more than 6 years ago | (#23458666)

(trying to be sarcastic) Why so many Mac users "have some particular problems with Microsoft technologies" ? :)) It looks more and more like disability :) Maybe health insurance industry can do something to help suffering people.

An alternative.... (0)

Anonymous Coward | more than 6 years ago | (#23498396)

Don't know about Mono on mobiles but cramming a big GP runtime in a mobile is likely trouble. Besides, for your application what you need is database integration.

In the long run, these lightly used OSs tend to be dead ends. a Java based product will have the most longevity.

I have no interest in it but found this interesting. Look at: http://www.mobiforms.com/
Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...