More Wally - Wallace B. McClure
in

MoreWally.com

Giving people what they want, More Wally. This is the technical and personal blog site of
Wallace B. (Wally) McClure.

This Blog

Syndication

News

Please goy buy 3-4 copies of my book on MonoTouch titled "Professional Android Programming with Mono for Android for .NET/C# Developers." They make great gifts all year round. Plus, I get about $.25 when you buy a copy.

Technical Sites

More Wally - Wallace B. McClure

This blog will have all kinds of posts about Wally McClure. In it, there will be tons of .NET and computer programming posts as well as Wally's views on life in general. As you might guess, this site and blog help you get More Wally in your life. What more could anyone want? iPhone, Android, MonoTouch, MonoDroid, Mobile, HTML5, .NET, ADO.NET, ASP.NET, AJAX, jQuery, jQuery Mobile, ASP.NET AJAX, and Windows Azure............follow me on twitter at Wally
  • Xamarin Designer for Android Webinar - Webinar via AppDev May 23

    I'll be doing a Webinar on May 23 on the Xamarin Mono for Android Designer that is new with Mono for Android 4.2.  This is a free webinar presented by AppDev, please attend if you can.  Xamarin DesignerHere is some info on the webinar:

    Android user interfaces can be created declaratively by using XML files, or programmatically in code. The Xamarin Android Designer allows developers to create and modify declarative layouts visually, without having to deal with the tedium of hand-editing XML files. The designer also provides real-time feedback, which lets the developer validate changes without having to redeploy the application in order to test a design. This can speed up UI development in Android tremendously. In this webinar, we'll take a look at UI Design in Mono for Android, the basics of the Xamarin Android Designer, and build a simple application with the designer.

  • Video Training - Android Advanced Development Using Mono for Android 4

    This course is about how to use Mono for Android with Tablets and the new Android 4.0 Ice Cream Sandwich release. The course introduces Android Tablets and Fragments, new controls that are available through Android 4.0, new application programming interfaces in Android 4.0, and new features available in the Google Android SDK Release 17 that can improve their development experience. This course also contains a module on the Android Design Experience, what developers can use to improve the user experiences, design suggestions from Google’s Android team, and some thoughts on how to improve the design experience via software code.
  • eLearning event on HTML5 for Mobile with jQuery Mobile - May 17

    I'll be doing an eLearning event on HTML5 for Mobile with jQuery Mobile. There will also be a few items sprinkled in on ASP.NET Razor.

    Mobile development is a hot item. Customers are buying iPhones, iPads, Android devices, and many other mobile computing devices at an ever increasing record pace. Devices based on iOS and Android are nearly 80 percent of the marketplace. RIM continues to be dominant in the business area across the world. Nokia's growth with Windows Phone will grow on a worldwide basis. At the same time, clearly web development is a tremendous driver of applications, both on the public Internet and on private networks. How can developers target these various mobile platforms with web technologies? Developers can write web applications that take advantage of each mobile platform, but that is a lot of work. Into this space, the jQuery Mobile framework was developed. This eLearning series will provide an overview of mobile web development with jQuery Mobile, a detailed look at what the jQuery Mobile framework provides for us, how we can customize jQuery Mobile, and how we can use jQuery Mobile inside of ASP.NET.

    Link: http://elearning.left-brain.com/event/mobile-web-development
  • Lights, Camera, Action with Mono for Android Article in Visual Studio Magazine

    Multimedia is expected in today's mobile applications, and the fun isn't only for smartphone and tablet users. Mono for Android, based on the Mono project's open source implementation of the Microsoft .NET Framework, can help you take advantage of Android Camera APIs in Visual Studio.

    Link: http://visualstudiomagazine.com/articles/2012/05/01/plug-in-to-mono.aspx

  • Playing, Recording, and Editing Video in the iPhone with MonoTouch Article

    This article resumes where we left off in "Working with Images and Animation on the iPhone and iPad with .NET and C#: Part 1," which looked at multimedia app development on the iPhone and iPad, including how to display simple images, take pictures with the device's camera, and perform some simple animation with the images. In this article, part 2, we'll look at how to perform more complicated animation using the NSTimer and UIView classes, how to display and record video, and how to edit the video.

    Link: http://www.devproconnections.com/article/mobile-development/animation-app-iphone-ipad-142265

     

  • Better Debugging with Mono for Android

    Let's be honest: When debugging with Android -- and Mono for Android (MfA) on Windows by extension -- using the emulator requires patience. This isn't a condemnation of Mono for Android; merely recognition of the reality of having to live within the Android ecosystem. I've noticed that most developers who develop on Android tend to be using a Mac. I think this is due to the development experience on the Mac being better overall for Android.

    Let's look at how this debugging has improved recently for Windows developers targeting Android with C#. Link to the article: http://visualstudiomagazine.com/articles/2012/04/25/better-debugging-with-mono.aspx

  • Mono for Android Monthly Column

    I can now announce with much excitement that fellow author and friend Greg Shackles and I will be authoring a monthly column for Visual Studio Magazine on Mono for Android.  The link to the introduction is: http://visualstudiomagazine.com/articles/2012/04/25/why-mono-for-android.aspx

    The list for the articles is at: http://visualstudiomagazine.com/Articles/List/Mono-for-Android.aspx

  • Working with Images and Animation on the iPhone and iPad with .NET and C#: Part 1

    Multimedia has come a long way during my career in programming. I remember the HP-41C, the first calculator that I used day to day in my geeky teenage years (unfortunately, I've only gotten geekier as I have gotten older). It could only output text and a few beeps. I was in nirvana and thought it just couldn't get any better. Now, everyone in my family has an iPhone and an iPad. With these devices, we can use software and hardware to record and play audio and video, take and display pictures, and modify this content.

    In this article (part 1) and the one soon to follow (part 2), I will discuss developing multimedia applications for the iPhone/iPad/iOS with .NET and C# using Xamarin's MonoTouch iOS development platform. Specifically, in the two-part series we'll explore taking pictures, displaying pictures, recording video, and playing video in iOS. In my experience, these are the most common operations performed by iPhone and iPad users. And for good measure, along the way we'll bounce a golf ball around the screen of your iPhone, and we'll do it all in C#.

    To read the rest of the article, check it out on the Dev Pro Connections web site.

  • eLearning event on HTML5 for Mobile with jQuery Mobile

    I'll be doing an eLearning event on HTML5 for Mobile with jQuery Mobile. There will also be a few items sprinkled in on ASP.NET Razor.

    Mobile development is a hot item. Customers are buying iPhones, iPads, Android devices, and many other mobile computing devices at an ever increasing record pace. Devices based on iOS and Android are nearly 80 percent of the marketplace. RIM continues to be dominant in the business area across the world. Nokia's growth with Windows Phone will grow on a worldwide basis. At the same time, clearly web development is a tremendous driver of applications, both on the public Internet and on private networks. How can developers target these various mobile platforms with web technologies? Developers can write web applications that take advantage of each mobile platform, but that is a lot of work. Into this space, the jQuery Mobile framework was developed. This eLearning series will provide an overview of mobile web development with jQuery Mobile, a detailed look at what the jQuery Mobile framework provides for us, how we can customize jQuery Mobile, and how we can use jQuery Mobile inside of ASP.NET.

    Link: http://elearning.left-brain.com/event/mobile-web-development
  • Who and What makes a Good Customer?

    I often have requests come in that I just don't understand.  I get emails and phone calls all the time.  Each time, I ask questions and no one seems to be able to understand that I don't just fall over to do whatever they want.  I actually try to understand the problem that the customer is trying to solve and look out for the customer's best interest.  I have spent about 25 years working on automating business processes, understanding business, and talking to people as if they are normal people.  Here are some of the items that come up and my thoughts on them:

    • You guys take someone's ideas and implement them and then we split the profits 50-50%.  No, that's not quite how it works.  If you are looking to build a business, then you need to go out and get some funding.  Customers that start with this need to think the business aspect through of this proposal.  Nice try, but it won't work.  Money is a requirement for a transaction to occur in my world.  People that start with this position, just aren't serious and don't get a lot from me.
    • I'll trade you something of mine for your development time.  This is a different angle of item 1, but its along the same lines.  The problem with this scenario is that you over value your item (I've never met someone that didn't) and you undervalue my time.  My time is worth money.  "We trade for dollars."
    • Contracts? I'm good for it. No, contracts are really important.  They put into paper the expectations of both sides.
    • Here's my contract, just sign it and send it in.  When was the last time that you walked onto a car lot and paid the list price?  There is something called negotiation.  I can guarantee that your contract is biased towards you.  Before we get started, contracts will be read, negotiated as necessary, and then signed once all sides agree.
    • But I can get a developer for $30 / hour. I'm completely confident that you can get someone that can write "Hello World" at a lower rate.  What is the value of success?  I'll never state that I can guarantee a project will be successful.  There will always be potholes and speed bumps that we hit.  I merely point out that I have rescued a number of projects and made them successful inspite of their status.  I have done this because I have challenged assumptions, understood the business side of things, and been able to translate them into an application that will solve the business problem.  Again, what's the value of success?  On a related note, I have found that people and companies that want to pay the least are also the biggest hassle to work with.  Why should I want to get into a painful situation?  It has to be worth my while to do this.  If I think you are a hassle to deal with, it might just be better if we didn't do this.
    • Everything has to funnel through the project manager.  When everything has to funnel through the project manager, what happens if the PM isn't available, understand the issues, or is not qualified. Believe it or not, I have had clients get upset when I went outside of their "chain of command."  I'm a solutions guy. If something can be solved by asking Fred, I'll ask Fred and not wait on the PM to think that they have the answer or for the PM to "ask Fred."  This tends to happen when people are afraid of something, most likely being marginalized.  Unfortunately, sometimes, the PM blocks too much and will just keep everything from happening.  This tends to happen at larger, very hierarchical clients, but not all the time, just most of the time.
    • We want a fixed price. There are too many twists and turns to know what is going on.  Writing software is like going to court.  You won't know how much it costs until you are done.
    • I have X amount to spend.  This is a take on trying to get a fixed a price.  Software development projects aren't fixed price.  They are like going to court.  Going to court means lots of twists and turns.  You don't know what they are until you get deep into them because the "devil is in the details."  If you want to only pay X, then there will be a time limit.
    • This is my schedule as to when I think it should be done.  This is another good one. Schedules are good for ballpark estimates and to understand pain and agony. If a schedule is suppossed to be perfect, sorry, it just won't work. If you run across someone that says you have to meet their schedule exactly, run, run away.
    • I have this list of technical requirements.  Hold on there little trooper.  Customers aren't allowed to load a lot of technical requirements on a project.  The more requirements that clients try to place on a project, the lower the likelihood of success. 
    • Its your job to solve all the issues.  It's my job to implement the technical parts of an application.  It's also my job to work with the client to understand the business issues.  I make it very clear that the customer has to be a part of the solution.  They need to have someone that can make it their job to understand the business issues.  Sometimes they understand the process, sometimes they don't.  We have to work with them to understand these issues.  Trying to do this in a vacuum is a bad idea and will result in a bad product.  This is related to the customer that sometimes will say that they don't have time for the project.  Excuse me, you are paying lots of money for the project and you don't have time for it?
    • You think you are too good/busy/whatever to work with me.  I'll show you! Interestingly enough, I recently had this happen.  I asked someone a question on an email and they immediately got all snotty with me because I had turned down working with them 18 months before.  Well, think about some of the issues above.  I knew that several applied to them.  I felt at the time it didn't make a lot of sense to move forward.  I would have given them the same response a week before the email exchange started.  The exchange showed my analysis of them was right.  I just decided to let it go.
    • We want our app to be like using the iPhone.  Excuse me? You have a complex line of business application that will only be used internally, and you want it to be simple? Line of business applications are typically not simple. They include lots of data, lots of logic, and aren't "simple" at all.  The iPhone is about mobile simplicity. Mobile simplicity means that you show the least amount of data and present the simplist options to the user. Mobile users don't need "everything", they need the options that they would normally choose.

    Now, none of these are show stoppers.  Issues can be overcome.  Positions can change.  Unfortunately, I find that most people that inquire are set in what they want and won't deviate.  I think that this is caused by:

    • People think that development is short, simple, and easy.  No, development done correctly is much harder than it looks.  It may just look like typing to the untrained eye.
    • I tend to get a lot of younger people that are trying to make something happen and look good for their side.  They don't know or understand the concept that each side has to have a win or the project won't work. Many people don't have the life experience to understand anything that isn't assigned to them.  This could also be thought of as the "9 to 5ers" that only want to go to work and leave when they are done.
    • I have a disproportionate number of "body shops" that think I exist to support them.  Unfortunately, they try to sell expertise on the cheap, so we end up in a combative position.  Most of the people that contact me are young people that don't have the life experience to negotiate or understand how to do anything beyond what they are assigned.

    There you have it.  None of this is a deal breaker in and of itself.  Unfortunately, I find that many times, clients come in and don't understand what they are asking for, the time that it takes to deal with a problem, and all of the other issues involved with resolving a problem in the technology world.  As I often say, the technology is the easy part.  Its dealing with all of the other problems that is the hard part.

  • Standing on the Shoulders of Giants

    Our Mono for Android books is out and available, yippeee.  However, it would not have gotten this far without a lot of people that I think need to get credit for their accomplishments.  These are:

    • Miguel de Icaza.  Miguel is the heart and soul of Mono.  Let's be honest.  Without Miguel, there is no Mono, let alone Mono for Android.
    • Joseph Hill.  Joseph has been exceedingly helpful to me since I first started working with MonoTouch in August, 2009.  Joseph called me last May personally and throughout the entire Novell and Xamarin affair.  He didn't have to do it because I realize he had much bigger issues at the time.  He always kept me up to date.
    • Nat Friedman.  Nat went on board to be the CEO of Xamarin.  While the only direct interaction I have had with him is a short conversation at MonoSpace, I just have this gut feeling that he did a lot of work to get things going and bridge the gap between Novell and Xamarin.
    • Chris Hardy.  Chris was one of my coauthors on our MonoTouch book.  I really appreciated his help there and I appreciated his help in our MfA book.  He was always willing to help or direct me even when it was well past midnight in England!  That type of devotion should not be underestimated.
    • Jon Pryor.  Jon was at my AndevCon workshop on Mono for Android in March, 2011.  He and I developed a great relationship from that.  On the mailing list, he has always been helpful.  He has also responded a number of times to private emails and IRC and not once called me stupid.
    • Jonathan Pobst.  I met Jonathan at devLink in August, 2010.  He and I also developers a great lasting relationship from that.  Just like Jon Pryor, he has been exceedingly help in the mailing list, private emails, and IRC (and not once called me stupid).
    • There are a number of other people internal to Xamarin that were helpful as well.  Some of these folks are: Andreia Gaito, Michael Hutchison, Rodrigo, and many others.  While I didn't deal with these people as much as the others, I know that they were there.  Their contributions should not be overlooked.

    There are numerous people outside of Xamarin that have been helpful as well.  In no uncertain order, my coauthors should be thanked.  They are: Nathan Blevins, John Croft, Jonathan ***, and Chris Hardy.  This is the hardest book at the I have ever been involved with.  The stops, starts, and issues that had to be overcome should not be underestimated.  I can't thank our Tech Editors Stephen Long and Jordan Cobb enough. They had to edit our book twice.

    At Wiley, I know that Bob Elliott and Jim Minatel took some heat due to the delays.  I appreciate that they weathered the storm.  Many thanks to Ashley Zurcher for her help at Wiley in promoting out book.  I can guess that the delays made her feel bad at times.

    Along with that, there are a number of people involved externally that were helpful.  Andy May, Tom Opgenorth, and host of others.  Trying to mention them individually means that I will leave someone off.  There is no doubt that I appreciate the help of the members of the community. 

    To everyone that was involved, to everyone in the community, to everyone that bought a copy I Thank You.  None of this would have been possible without your help. I am humbled by being associated with all of you.

    We stood on the shoulders of giants for this book. You made us successful.  Hopefully, we are all better due to your help!

  • Mono for Android Book has been Released!!!!!

    Mono for Android bookIf I understand things correctly, and I make no guarantees that I do, our Mono for Android book has been RELEASED!  I'm not quite sure what this means, but my guess is that that it has been printed and is being shipped to various book sellers.

    So, if you have pre-ordered a copy, its now up to Amazon to send it to you.  Its fully out of my control, Wrox, Wiley, as well as everyone but Amazon.

    If you haven't bought a copy already, why?  Seriously, go order 8-10 copies for the ones you love.  They'll make great romantic gifts for the ones you love.  Just think at the look on the other person's face when you give them a copy of our book.

     Here's a little about the book:

    The wait is over! For the millions of .NET/C# developers who have been eagerly awaiting the book that will guide them through the white-hot field of Android application programming, this is the book. As the first guide to focus on Mono for Android, this must-have resource dives into writing applications against Mono with C# and compiling executables that run on the Android family of devices.

    Putting the proven Wrox Professional format into practice, the authors provide you with the knowledge you need to become a successful Android application developer without having to learn another programming language. You'll explore screen controls, UI development, tables and layouts, and MonoDevelop as you become adept at developing Android applications with Mono for Android.

    Develop Android apps using tools you already know—C# and .NET

    Aimed at providing readers with a thorough, reliable resource that guides them through the field of Android application programming, this must-have book shows how to write applications using Mono with C# that run on the Android family of devices. A team of authors provides you with the knowledge you need to become a successful Android application developer without having to learn another programming language. You'll explore screen controls, UI development, tables and layouts, and MonoDevelop as you become adept at planning, building, and developing Android applications with Mono for Android.

    Professional Android Programming with Mono for Android and .NET/C#:

    • Shows you how to use your existing C# and .NET skills to build Android apps

    • Details optimal ways to work with data and bind data to controls

    • Explains how to program with Android device hardware

    • Dives into working with the file system and application preferences

    • Discusses how to share code between Mono for Android, MonoTouch, and Windows® Phone 7

    • Reveals tips for globalizing your apps with internationalization and localization support

    • Covers development of tablet apps with Android 4

    Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

    Now, go guy a bunch of copies!!!!!

    If you are interested in iPhone and Android and would like to get a little more knowledgeable in the area of development, you can purchase the 3 pack of books from Wrox on Mobile Development with Mono. This will cover MonoTouch, Mono for Android, and cross platform methods for using both tools. A great package in and of itself. The name of that package is: Wrox Cross Platform Android and iOS Mobile Development Three-Pack

  • Mobile: Wrox Cross Platform Mobile Development - iPhone, iPad, Android, and everything with .NET & C#

    3 book setWrox has produced a bundle of their 3 best selling mobile development books and it is available as of Today (March 16). A bundle of 3 best-selling and respected mobile development e-books from Wrox form a complete library on the key tools and techniques for developing apps across the hottest platforms including Android and iOS. This collection includes the full content of these three books, at a special price:
    • Professional Android Programming with Mono for Android and .NET/C#, ISBN: 9781118026434, by Wallace B. McClure, Nathan Blevins, John J. Croft, IV, Jonathan ***, and Chris Hardy
    • Professional iPhone Programming with MonoTouch and .NET/C#, ISBN: 9780470637821, by Wallace B. McClure, Rory Blyth, Craig Dunn, Chris Hardy, and Martin Bowling
    • Professional Cross-Platform Mobile Development in C#, ISBN: 9781118157701, by Scott Olson, John Hunter, Ben Horgen, and Kenny Goers

    Remember, go buy 8-10 copies of the 3 book set for the ones you love. They will make great and romantic gifts!!

  • List of Android Themes

    I've been looking for this list forever.  Thankfully, Nathan Blevins' google foo is much better than mine.

    http://developer.android.com/reference/android/R.style.html

     The thing that I found that allows a developer to use these themes is to use the "." character as oppossed to the "_" character.

    Here's an example using the theme as an attribute of the Activity:
    [Activity(Label = "ThemeTest", MainLauncher = true,

    Theme = "@android:style/Theme.Holo.Light", Icon = "@drawable/icon")]

  • Android Development with Mono for Android 4 - Training via AppDev

    My Android Development with Mono for Android 4 Video Training Series via AppDev is out and available.  That's right, .NET/C# developers can now write native apps for Android devices. I hope that this is helpful to you as you get up to speed with Mono for Android.  Here is some info on the training:

    This course will show you how to use Mono for Android 4 by starting with how to install Mono for Android 4, introduce the SDK tools and then debugging of applications. The course then will show how to use the Emulators for items like interface design and controls. Next are the different types of Android devices and how to support them. Application Activities and lifecycles are covered and then Menus, Tables and Data. The course will then show the soft keyboards, advanced controls, user notifications and working with the contacts lists. The course will conclude with working with device hardware for directions, multimedia and Geo location.

    In this course, you will learn:

    • How to set up an Android Emulator
    • About Android application framework support
    • How to debug using profiling with Traceview
    • How to setup a virtual device for Android emulation
    • To design screen layouts for Android tablets
    • About the basic set of controls
    • What are the different Android application states
    • How options menu is used with Action Bar in Android 3.0 and higher
    • About the different types of virtual keyboards
    • What is a Toast Nortification
    • What media types Android supports
    Prerequisites: This course assumes that you are comfortable developing applications using Visual Studio 2010 and C#. Mono Android requires Visual Studio 2010 Professional or higher (and will not work with Visual Studio Express editions).

    Installation of Mono Droid

    • What is Mono for Android
    • Mono for Android Installer
    • Android SDK
    • MonoDeveloper for Windows
    • MAC Android SDK

    Android SDK Tools

    • Android Development
    • Android Debug Bridge - ADB
    • Dalvik Debug Monitor Server - DDMS

    Android Debugging and Testing

    • Android Ecosystem
    • Debugging Operating System
    • Android Debug Bridge

    Android Emulator

    • Setup an Emulator Session
    • Features Available
    • Multiple Emulator Sessions

    Android User Interface Design

    • User Interface
    • Selection and Focus
    • Layouts for Different Screen Sizes
    • DroidDraw

    Android Controls

    • User Interface Basics
    • XML Layout
    • Images

    Android Devices and their Support

    • Screen Resolution
    • Android Manifest
    • Visual Studio Project Properties

    Android Applications - Activities and Lifecycles

    • Parts of an Application
    • Activity Life Cycle
    • Mono for Android Specifics

    Mono for Android Menus

    • Types of Menus
    • Creating Menus via Text
    • Creating Menus via Resources

    Tables and Data

    • Data Terms and Interchange Standards
    • Web Services
    • Displaying Data

    Android Soft Keyboards and User Hints

    • Input Types
    • Hints

    Advanced Controls

    • Writing a Custom Control
    • Drag and Drop
    • User Input
    • Toast Notification

    Android User Notification

    • Dialogs
    • Notifications
    • Toast

    Address Book, Contacts and Content Providers

    • Content Providers
    • Address Book
    • Calendar
    • General Guidelines for Queries

    Integrating with Device Hardware

    • Sensor API
    • Vibration
    • General Pattern
    • Turn by Turn Directions

    Multimedia

    • Play Video
    • Play Audio

    Android and Locations

    • Location
    • Proximity
    • GeoCode
    • Maps
More Posts Next page »
2006 - Wallace B. McClure
Powered by Community Server (Non-Commercial Edition), by Telligent Systems