Thank you Microsoft
-
Mike Marynowski wrote:
Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
While I can see your point... surely you jest? I couldn't stand editing XAML. The editor was slooooooooooooooow. Did I mention slow?
Jeremy Falcon
Jeremy Falcon wrote:
I couldn't stand editing XAML. The editor was slooooooooooooooow. Did I mention slow?
OMG! Someone actually use the editor?! :omg:
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
It *was* slow, but it has been improved significantly in each release of Visual Studio. XAML is also expressive enough that I rarely use the editor directly anyway - I usually have it in split screen view and I type the XAML manually. Faster, more accurate, less code bloat. I'm a huge advocate of beautiful hand-written XAML. Even when the editor was slower, I still never found it to be so bad that it become unusable. Keeping things well organized and split into smaller files helped a lot. There was a period of time before I was particularly good with XAML and relied on the editor more than I do now that I remember it being sluggish but I'll take sluggish over hand coding a UI with actual code or using Interface Builder any day. The kinds of UIs that you can easily build with XAML is nothing short of amazing.
Mike Marynowski wrote:
XAML is also expressive enough that I rarely use the editor directly anyway
What, you mean you can modify the top (editor) screen, I thought it was there for display only. Oh wait I have been known to click on an object and delete it, thai is the extent of editing done in the top screen.
Never underestimate the power of human stupidity RAH
-
This started off as a rant on here but then I realized it was getting long and decided to throw it onto my blog. I've somewhat recently been forced (okay, persuaded) to do some iOS and Android development and it really put the state of developer tools into perspective for me. I was shielded in my little Microsoft bubble of really damn good developer tools and now that the bubble has burst and the red pill has been swallowed, I figured a thank you was in order: [Code Index] Thank You Microsoft[^] I was planning to make a transition into more and more mobile stuff but I can't...I've been spoiled with XAML and C#, even considering faults and all, and I just can't go back now. So I'm going to keep focusing more on server-based work, dev tooling and stuff that won't need native mobile apps. Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
Bugger mobile, I shy away from entering the web stack let alone the non MS mobile arena.
Never underestimate the power of human stupidity RAH
-
Mike Marynowski wrote:
Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
While I can see your point... surely you jest? I couldn't stand editing XAML. The editor was slooooooooooooooow. Did I mention slow?
Jeremy Falcon
Jeremy Falcon wrote:
I couldn't stand editing XAML.
I've recently been writing one app natively on all platforms. I wrote it as a winform. Then i converted it to Android. That was very easy. Next, I decided to write it as a UWP Universal Windows Platform app. Pain. Agony. XAML. Now, I'm writing it as an iPhone app. Anyways, the other painful thing about the UWP XAML thing is that you literally "type your user interface" and all the editing takes up tons of space vertically on the screen. it's such a pain. And slow.
My book, Launch Your Android App, is available at Amazon.com.
-
Mike Marynowski wrote:
Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
While I can see your point... surely you jest? I couldn't stand editing XAML. The editor was slooooooooooooooow. Did I mention slow?
Jeremy Falcon
Jeremy Falcon wrote:
Did I mention slow?
No, but you forgot to mention 'dumb and buggy'. It makes a lot of assumptions about what you would use XAML for and quickly stops working when something is not as it expects. It easily took the first place as my 'favorite' Mickeysoft bugware. Previously it was the ASP.Net webform editor, which at least never became completely useless.
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a fucking golf cart.
"I don't know, extraterrestrial?" "You mean like from space?" "No, from Canada." If software development were a circus, we would all be the clowns. -
This started off as a rant on here but then I realized it was getting long and decided to throw it onto my blog. I've somewhat recently been forced (okay, persuaded) to do some iOS and Android development and it really put the state of developer tools into perspective for me. I was shielded in my little Microsoft bubble of really damn good developer tools and now that the bubble has burst and the red pill has been swallowed, I figured a thank you was in order: [Code Index] Thank You Microsoft[^] I was planning to make a transition into more and more mobile stuff but I can't...I've been spoiled with XAML and C#, even considering faults and all, and I just can't go back now. So I'm going to keep focusing more on server-based work, dev tooling and stuff that won't need native mobile apps. Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
I switched from MFC/C++ and C# to iOS and never want to go back. This crappy resource editing and bloated XAML is pain in the ass. The class library from Apple are simple and they work. No fizzling around some messie bugs and annoying errors. It is hard to start, but when know enough you write mean and clean code. And it works on all systems, no big and bloaty setups with errors. :thumbsup:
Press F1 for help or google it. Greetings from Germany
-
This started off as a rant on here but then I realized it was getting long and decided to throw it onto my blog. I've somewhat recently been forced (okay, persuaded) to do some iOS and Android development and it really put the state of developer tools into perspective for me. I was shielded in my little Microsoft bubble of really damn good developer tools and now that the bubble has burst and the red pill has been swallowed, I figured a thank you was in order: [Code Index] Thank You Microsoft[^] I was planning to make a transition into more and more mobile stuff but I can't...I've been spoiled with XAML and C#, even considering faults and all, and I just can't go back now. So I'm going to keep focusing more on server-based work, dev tooling and stuff that won't need native mobile apps. Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
I am a kernel dev, 18 years on windows, 3 on linux, and you are right in one respect: My list of tools: 1) Windbg on Windows. Extraordinary debugger. More power than you know what to do with. ON linux, kgdb + debugger that came with compiiler. Dont know if Eclipse works as a debugger, and dont know if the problem setting kernel breakpoints was because it was an ARM11 system I was debugging or not. Building unoptimised code in linux has do be done source file at a time with pragmas. No over all 'debug build' of driver. 2) Code editing. VS versus GEdit. Actually I find the two similar. I dont use autocomplete anyway so no big difference here. 3) Code browsing. VS Browse vs CodeQuery. Being able to jump to definitions AND implementations in the linux kernel is of course nice, so its a point to linux here. So its an even score, but the power of Windbg is extraordinary. I know many linux kernel devs who printk debug. If they ever tried Windbg they would never be happy with such a crude process again.
-
This started off as a rant on here but then I realized it was getting long and decided to throw it onto my blog. I've somewhat recently been forced (okay, persuaded) to do some iOS and Android development and it really put the state of developer tools into perspective for me. I was shielded in my little Microsoft bubble of really damn good developer tools and now that the bubble has burst and the red pill has been swallowed, I figured a thank you was in order: [Code Index] Thank You Microsoft[^] I was planning to make a transition into more and more mobile stuff but I can't...I've been spoiled with XAML and C#, even considering faults and all, and I just can't go back now. So I'm going to keep focusing more on server-based work, dev tooling and stuff that won't need native mobile apps. Anyone else here try to make an honest effort to go from the Microsoft ecosystem into Android/iOS development and fail miserably? Well not fail, but ended up hating it?
Went from SQL Server to Oracle. Screams of agony ensued. Went from Microsoft Office to OpenOffice and later LibreOffice. That didn't go so well. Went from Visual Studio to Notepad. Actually that worked a lot faster :laugh: Visual Studio is a great tool, but sometimes it does too much and my computer is a few years old. I'm starting up VS now so I can get to work in five minutes :D The minimum install used to be 6GB, 'nuff said :wtf: If Microsoft does something right it's development tools :D
Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
-
I switched from MFC/C++ and C# to iOS and never want to go back. This crappy resource editing and bloated XAML is pain in the ass. The class library from Apple are simple and they work. No fizzling around some messie bugs and annoying errors. It is hard to start, but when know enough you write mean and clean code. And it works on all systems, no big and bloaty setups with errors. :thumbsup:
Press F1 for help or google it. Greetings from Germany
To each their own I guess. I don't think XAML is bloated if written properly, and I'm extremely anal about XAML being written cleanly. We write XAML by hand, not using the editor. Anytime XAML seems bloated we refactor or find a way to reduce the clutter and keep it clean. This is just one example: [Code Index] | Getting Rid of Ugly TransformGroup Blocks in WPF[^] Resources are great - they are like CSS styles for controls. If you use the editor then yeah it's a bad experience and you will get TONS of bloat. The editor should be there for only 3 things - scaffolding a template or a style for you that you then hand modify and place where you actually need, having a live view of the changes you are making in the XAML by hand, or playing with property values like margins or color live so you can tweak them just right by sliding your mouse on a slider or color wheel instead of typing, deleting, typing, deleting, etc. Do you use IB or code to build your iOS interfaces? I'm assuming code, as most iOS devs quickly drop IB (us included) because of how bad it is. You lose something special when you build interfaces in code instead of a declarative language with a live updating view. For mobile apps it can be argued that the interfaces are simple enough that it doesn't make much of a difference but I tend to disagree. I would also *strongly* disagree that hand written XAML is bloated compared to the code required to build up an interface. I wrote interfaces with code 10 years ago and in my opinion it's a huge step backwards. HTML/CSS and XAML are a much better way of representing an interface.
-
Mike Marynowski wrote:
XAML is also expressive enough that I rarely use the editor directly anyway
What, you mean you can modify the top (editor) screen, I thought it was there for display only. Oh wait I have been known to click on an object and delete it, thai is the extent of editing done in the top screen.
Never underestimate the power of human stupidity RAH
Yes, definitely agreed. Sometimes I use the slider to change margins or the color wheel because it is nice to finely tweak the value over a smooth range. I also like the scaffolding for creating a copy of a template or style, but then I hand delete 90% of the bloat and just keep what I need. Animations in Blend for Visual Studio is just about the only thing the editor is used extensively when we have an animation heavy component to the app. It's actually pretty fantastic in terms of how easy it is to make great animations but the markup it produces is god awful, so we tuck away animated stuff into its own controls and only edit it with Blend.
-
Jeremy Falcon wrote:
I couldn't stand editing XAML.
I've recently been writing one app natively on all platforms. I wrote it as a winform. Then i converted it to Android. That was very easy. Next, I decided to write it as a UWP Universal Windows Platform app. Pain. Agony. XAML. Now, I'm writing it as an iPhone app. Anyways, the other painful thing about the UWP XAML thing is that you literally "type your user interface" and all the editing takes up tons of space vertically on the screen. it's such a pain. And slow.
My book, Launch Your Android App, is available at Amazon.com.
Converting an app from Winforms would be a lot of work because MVVM/XAML is a completely different paradigm. It's only really suitable for a new development written ground up the way you have to write MVVM/XAML apps. It also has a huge learning curve, much like HTML/CSS - I hated it at first too, and it takes a long time before you get comfortable enough with it to write code that you can look at and say "ah, what a work of beauty"...but when you get there, it becomes indispensable and you never want to go back to procedural UI layout. I have a fairly old box by today's standards and I have yet to experience slowness on VS2015. What are you using?? I also have resharper going and that takes up a whole lot of system resources on its own and still no problems. I never understood developers that would hold out upgrading memory or to an SSD to be able to use more powerful tools. Whats $300 or $400 extra to save you hours and hours of building an app? XAML tools used to be a bit slow but since VS2013 service pack something, I haven't had any such issues.
-
Jeremy Falcon wrote:
Did I mention slow?
No, but you forgot to mention 'dumb and buggy'. It makes a lot of assumptions about what you would use XAML for and quickly stops working when something is not as it expects. It easily took the first place as my 'favorite' Mickeysoft bugware. Previously it was the ASP.Net webform editor, which at least never became completely useless.
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a fucking golf cart.
"I don't know, extraterrestrial?" "You mean like from space?" "No, from Canada." If software development were a circus, we would all be the clowns.I don't know what you mean by "it makes a lot of assumptions" - can you explain? The editor used to be horribly buggy. That hasn't been the case for a very long time now though, perhaps it would be worth re-evaluating :) A lot of what I said is also dependent on the kind of development you do. The apps we build now have DPI-independent full custom designs. Whatever a designer can design in Illustrator we need to be able to translate easily into an interface, and XAML makes it sooooo easy. If you are building more standard apps then the learning curve might not be worth making the transition, but I will say that once you get over the learning curve you never want to use anything else again.
-
I am a kernel dev, 18 years on windows, 3 on linux, and you are right in one respect: My list of tools: 1) Windbg on Windows. Extraordinary debugger. More power than you know what to do with. ON linux, kgdb + debugger that came with compiiler. Dont know if Eclipse works as a debugger, and dont know if the problem setting kernel breakpoints was because it was an ARM11 system I was debugging or not. Building unoptimised code in linux has do be done source file at a time with pragmas. No over all 'debug build' of driver. 2) Code editing. VS versus GEdit. Actually I find the two similar. I dont use autocomplete anyway so no big difference here. 3) Code browsing. VS Browse vs CodeQuery. Being able to jump to definitions AND implementations in the linux kernel is of course nice, so its a point to linux here. So its an even score, but the power of Windbg is extraordinary. I know many linux kernel devs who printk debug. If they ever tried Windbg they would never be happy with such a crude process again.
Oh yeah, Windbg is great, saved me a few times from tearing my hair out :D I've never done kernel dev though so I can't comment on your last point. Low level development is an entirely different beast than what I've been doing for the last 10 years. I loved doing that kind of work back in the day, but besides some embedded C++ stuff for MQX RTOS, it just isn't the kind of work my clientele is looking for.
-
Went from SQL Server to Oracle. Screams of agony ensued. Went from Microsoft Office to OpenOffice and later LibreOffice. That didn't go so well. Went from Visual Studio to Notepad. Actually that worked a lot faster :laugh: Visual Studio is a great tool, but sometimes it does too much and my computer is a few years old. I'm starting up VS now so I can get to work in five minutes :D The minimum install used to be 6GB, 'nuff said :wtf: If Microsoft does something right it's development tools :D
Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
Visual Studio is a bit bloated, but that's part of its beauty in a way. Everything is just there and easy to find. The only other tools I need to do 99% of my dev work are Resharper and XAML Styler. I'll gladly spend a few hundred bucks on system upgrades to run a more productive environment where everything is just there and easily accessible when I need it, but I can definitely see why that's a turn off for a lot of people.
-
Oh yeah, Windbg is great, saved me a few times from tearing my hair out :D I've never done kernel dev though so I can't comment on your last point. Low level development is an entirely different beast than what I've been doing for the last 10 years. I loved doing that kind of work back in the day, but besides some embedded C++ stuff for MQX RTOS, it just isn't the kind of work my clientele is looking for.
Mike Marynowski wrote:
Windbg is great, saved me a few times from tearing my hair out
Yeah, its great for user mode too, an awesome debugger, its the only Microsoft I like and respect. :) I like the lov level stuff, I guess being an ex mech-aero engineer I like the fact its more like real engineering, nuts and bolts stuff.
-
Visual Studio is a bit bloated, but that's part of its beauty in a way. Everything is just there and easy to find. The only other tools I need to do 99% of my dev work are Resharper and XAML Styler. I'll gladly spend a few hundred bucks on system upgrades to run a more productive environment where everything is just there and easily accessible when I need it, but I can definitely see why that's a turn off for a lot of people.
Bloated, definitely. When you have dual quad processors and SSDs and tons of RAM you sort of expect things to go fast. VS seems to stand for Very Slow.
We're philosophical about power outages here. A.C. come, A.C. go.
-
Jeremy Falcon wrote:
I couldn't stand editing XAML. The editor was slooooooooooooooow. Did I mention slow?
OMG! Someone actually use the editor?! :omg:
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
Yes. :^)
Jeremy Falcon
-
When I say HTML I obviously mean HTML+CSS. Like I said, it is getting close to XAML. I way rather build a hybrid app in a web container than use any of the native mobile options. I will be thrilled when HTML gets proper shadow DOM. Understanding inheritance of styles is much simpler, much to the credit of how good the live inspection tools have become. Tweaking styles for a web app live is sooooo awesome and easy. Hell you can build half your app by never leaving Chrome now, which is pretty amazing. XAML holds a special place in my heart though, largely in part because of the integration with .NET and C#. Everything I do in XAML is possible in HTML+CSS+JS but considerably more painful at the moment. Have you tried TypeScript? I was playing with the 2.0 release the other day and I must say, it is pretty awesome. When HTML gets shadow DOM and fixes the few outstanding issues I have, I might jump ship entirely to HTML/CSS/TS.
Mike Marynowski wrote:
When I say HTML I obviously mean HTML+CSS.
I can't make that assumption... obviously. Kinda hard for me to gauge your level of expertise, with a post like "everything MS does is awesome, nom nom, <3 <3." :-D
Mike Marynowski wrote:
I way rather build a hybrid app in a web container than use any of the native mobile options.
As a strong web dev, I'm the exact opposite, especially since there's no need for such a container nowadays. 10 years ago, I could understand that. Those days are gone though.
Mike Marynowski wrote:
Everything I do in XAML is possible in HTML+CSS+JS but considerably more painful at the moment.
Because you're better what what you have more experience in. I'd wager it's not more painful, but then again my experience over 20 years has been more pure web dev and just a 2 year stint in Silverlight. So, of course I'd lean that way.
Mike Marynowski wrote:
Have you tried TypeScript? I was playing with the 2.0 release the other day and I must say, it is pretty awesome.
Nope, but I'm keen to try it. Used Babel for ES6/2015 a couple times. Although with now Angular all aboard the TS train I'm ready to have another peak at it.
Jeremy Falcon
-
Bloated, definitely. When you have dual quad processors and SSDs and tons of RAM you sort of expect things to go fast. VS seems to stand for Very Slow.
We're philosophical about power outages here. A.C. come, A.C. go.
I don't know what to say, that hasn't been my experience with it :/ What part of it is slow specifically? Could it be related to a plugin?
-
Mike Marynowski wrote:
When I say HTML I obviously mean HTML+CSS.
I can't make that assumption... obviously. Kinda hard for me to gauge your level of expertise, with a post like "everything MS does is awesome, nom nom, <3 <3." :-D
Mike Marynowski wrote:
I way rather build a hybrid app in a web container than use any of the native mobile options.
As a strong web dev, I'm the exact opposite, especially since there's no need for such a container nowadays. 10 years ago, I could understand that. Those days are gone though.
Mike Marynowski wrote:
Everything I do in XAML is possible in HTML+CSS+JS but considerably more painful at the moment.
Because you're better what what you have more experience in. I'd wager it's not more painful, but then again my experience over 20 years has been more pure web dev and just a 2 year stint in Silverlight. So, of course I'd lean that way.
Mike Marynowski wrote:
Have you tried TypeScript? I was playing with the 2.0 release the other day and I must say, it is pretty awesome.
Nope, but I'm keen to try it. Used Babel for ES6/2015 a couple times. Although with now Angular all aboard the TS train I'm ready to have another peak at it.
Jeremy Falcon
Jeremy Falcon wrote:
with a post like "everything MS does is awesome, nom nom, <3 <3."
Well with a few exceptions, Silverlight being one of them, everything they put out *is* awesome lol
Jeremy Falcon wrote:
there's no need for such a container nowadays
Yes there is - notifications, app store discovery, integration into the system (i.e. being able to call activities that open other apps), creating a keyboard, *easy* system integrated micro-payments, etc etc etc. I can go on and on here. Web apps on mobile can't do a lot of things native apps or hybrid apps can.
Jeremy Falcon wrote:
Because you're better what what you have more experience in
Yes, of course, but that's not my point. I don't even mean that in terms of how quickly I can do it, more in terms of the "nicest" and "cleanest" implementation that meets all the requirements. Web stuff is great but common, for a very large class of applications native is much better. Our biggest project involves apps that talks to bingo machines through serial interfaces, output animations across 3 full HD TVs, do system level calls to the OS to arrange video outputs and such, has configurable detailed logging to a local log file (with Log4Net), writes live backup data to a USB stick so if the system goes down it's just a matter of unplugging the stick and plugging it into another computer and off you go again, etc. The part of the system that staff use to take payments from people on the floor via iPods is a mobile web app, because that's where it made sense to use one. Can we do the rest with a node.js + website system? Yes, but it would be bloody mess and it would be significantly more complicated. And the performance of the animations would be crap. My point is...HTML/JS apps are not a proper substitute for native development yet, and likely won't be for a while. I like the web, but it is unsuitable for the stuff I do. Hence the painful part.