Skip to content

Communities

Super Simple CQRS Example

Under 500 lines of code before the client

http://github.com/gregoryyoung/m-r

 

I will write a blog post about some of the stuff in it but its pretty straight forward.

Categories: Communities

Checklist for Automating Software Testing

C-Sharpcorner - Latest Articles - Tue, 08/31/2010 - 06:52
In this article you will learn how to use Checklist for automating software testing.
Categories: Communities

Overview of Data Recovery

C-Sharpcorner - Latest Articles - Tue, 08/31/2010 - 06:46
This short article includes an overview of data recovery in general and also includes some handy advise.
Categories: Communities

Div Layout vs. Table Layout - Web Designing

C-Sharpcorner - Latest Articles - Tue, 08/31/2010 - 06:35
Most of the web designers directly chose the table based layout for their websites. Reason behind this is it's very easier to design a webpage rather than going for div based layout or the web designers are not that much familiar with CSS.
Categories: Communities

Chess Knight Tour with C# GDI+

C-Sharpcorner - Latest Articles - Tue, 08/31/2010 - 05:42
In this article you will learn how to wrap the Graphics object to create a Board class to render and maintain the state.
Categories: Communities

ListBox in C#

C-Sharpcorner - Latest Articles - Tue, 08/31/2010 - 05:11
In this tutorial, we will learn how to create a ListBox control at design-time as well as at run-time. We will also see how to create multiple columns ListBox control with single and multiple selections. This article also covers most of the properties and methods of the ListBox control.
Categories: Communities

Product Review - Newsletter Software

Newsletters are a medium through which webmasters communicate with their readers. With the rapid increase in blogs, there is a need for an automated solution which provides an ability to deliver newsletters without causing any major problems on the server. In this review, Anand analyses a newsletter program packed with a wide range of features which can be used in a blog.
Categories: Communities

wFace – windows phone 7 facebook integration part 1

DotNetSlackers Latest ASP.NET Articles - Tue, 08/31/2010 - 01:00
This article shows how to use the Facebook graph_API (http://developers.facebook.com/docs/API) in a windows phone 7 (wp7) Silverlight application. All used tools are free software - for downloads take a look at the links at the end of this document.

Categories: Communities

Catching the iPhone in the .net

Smartphones and all other kinds of mobile devices are everywhere, almost everybody has one. Not just for entertainment but also as a client for all kinds of enterprise software. Making choices when developing desktop software was easy, the main discussion usually was restricted to deciding which Windows version to target. Making choices when developing software for mobile is harder. No platform is dominant and each platform has other tools and languages. The nice thing with the Windows Mobile platform is that you can use the same tools and languages (read C# and the .net platform) as used for desktop applications. The nice thing about Apples iPhone is that it has an incredible UI, is also widely used and has a good possibility for developing commercial applications.

Wouldn’t it be nice to have the best of both worlds ? The quality of the tools and language of Windows Mobile and the pleasure of use of an iPhone  ?

A small Windows Mobile rant

I have to get something of my chest first. This is an important reason, besides the iPhone just being sexier :), to  look further than WM.

Building applications for Windows Mobile is, thanks to the .net compact framework, no big deal. For a couple of years my Windows Smartphones were a nice and reliable target. But instead of getting better the Windows Mobile platform has become worse in the everyday use, despite all the “integration” in Windows. Let me sum up my complaints over the last year:

  • Since Vista many a smartphone is no longer recognized when connected over USB. Switch to bluetooth ?
  • After a bluetooth connection with my laptop I have to reboot the phone before it will connect to anything else (like my old a plain vanilla carkit)
  • Office 64 bit does not sync with any Windows Mobile device at all Switch back to Office 32 bit ?

All of these complaints are well known and acknowledged. And will not be fixed. Period. (None of them are a problem when trying to sync an iPhone with MS Outlook) So you are isolated more and more with Windows Mobile. Yes things will be better with Mobile 7. But that’s somewhere in the future and there is no way to migrate existing hard- and software.

The good thing with WM7 is that all software development is based on Silverlight. Which has proven to be a nice development environment with a very good subset of the .net framework which encapsulates the platform. You only have take care about the form factor of the hardware and can forget all about the dreaded OS. For now it’s time to look at the iPhone.

Wrapping up iOS

At first sight the tools for creating iOS (the OS for the iPhone and iPad) applications don’t look very appealing. The API is rich but the language (objective C) is not very friendly. Worst of all you have to do your own memory management. Memory is freed using ref-counting, just like in COM. I have had my share of that working with Delphi in COM and avoid it like the plague ever since. The main problem with refcounted objects is what happens with them when they are passed as a parameter to some other piece of code. Without a clue what will happen to their count while spending some time there. Memory leaks as well as null pointers are usually the result. Trying to avoid that leads to ugly changes in the software’s design, only trying to satisfy memory management.

Here the MonoTouch framework comes to the rescue. It wraps up the iOS framework in a .net style library and adds a C# compiler for iOS. All external resources are wrapped up in the IDisposable pattern. Over the years a garbage collector and IDisposable have proven to be, despite the initial skepticism, quite reliable. And have lead to code which is far simpler.

Building an iPhone app in C#

You need several things to do this, the first is a Mac with the newest version of OS X. It does not have to a monster, for me the smallest Macbook is by far powerful enough. Monotouch runs as a part of MonoDevelop, which looks like a simple Visual Studio for the Mac.

Monodevelop

Simple, but all the essentials are included. Monodevelop has integrated nUnit support and refactoring. Don’t expect too much of the latter, it pales compared to that of VS. Not to mention Resharper. Typing code in MonoDevelop is a new form of sports on itself. The difference in the navigation keys itself is enough to drive you nuts in the beginning. And, without Resharper, there is so much more which you have to type.

The good part is that running and debugging the app works like a charm. The iPhone emulator works well, including network support. Which can be another PITA developing for Windows mobile. Just for fun, try watching a Youtube movie in the emulator. The debugger is a way of exploring what’s inside an iPhone. The stability of the environment is good, it takes inspecting null pointers to non managed resources to hang up MonoDevelop. With “Force Quit” in the apple OS (comaparable to the Windows Task Manager) a quick restart of the tool is easy.

Apple support

The App Store is a way to sell your apps. Before an app is accepted for resale it is tested and scanned by Apple. A lot has been said about Apple banning apps not created with Apple’s own SDK. Monotouch apps compile to native iOS code and Apps built with Monotouch are reported to be accepted to the appstore. Working for the appstore takes some investments. Beside the mac hardware and an entrance fee to the store there is $500 for a Monotouch licence to deploy your apps to an iPhone or the store. Apps built with the free (trial) version only deploy to the emulator.

Taking the bait

Having explored Monotouch I have taken the bait. As with every new thing the first steps on the curve are hard. There are a lot of resources on the web, the quality varies. As a first step I started with refactoring the examples. By hand… Soon the result was astonishing. Most examples are in a very chatty syntax; refactoring the noise to auto-properties soon revealed the intention of most of the code. And quite soon I found my way. I’ve got the iPhone in my .net. For now I can only advise you to, in case you have a Mac, take a look at Monotouch. Enjoy! More on my experiences later.

Categories: Communities

Education

What if software development was taught like we teach a language? (This question led me to following thoughts, I suck at grammar and am not saying this is how we actually learn, these are just the thoughts that came to me while pondering that question.) That we are first taught the most fundamental of basics in a language, the ABCs, the sounds of our native tongue. Through this most primitive of understanding we start to grow our proficiency.

I didn't attend university courses on software development but I would guess that it doesn't start with learning about AND/OR/NOT constructs. Not that we need to spend a crap ton of time on this topic but do we spend any? Is there any value in it, when I read the Pattern on the Stone I found understanding the basics to be fascinating. It's understanding things at that low level that I feel has allowed me understand things at the higher levels.

As we progress in our understanding, we should move away from using primitive language structures, and start to develop a level of comprehension that goes beyond simple sentences, and one word responses. We need to learn how to compose prepositional sentences, and transitions. When I read Object Thinking I started to see the world as the designers of object oriented languages wanted me too. Now I just need to find the books on functional and other language styles.

Learning how to compose the chapters and novels of our software development can prove to be an even larger challenge for us in the software development community. It takes an awful long time to build up a program that has enough complexity to warrant being compared to a 300 or 400 page book. We study the architecture of our language from the time we are infants, how can we embed the concept of architecture in programming through out the whole of the education? When our projects are relatively small by comparison the large programs we will become responsible for when we move out to the real world?

Though I have studied many other languages than English (German, Spanish, Japanese, and Chinese) I am not sure its helped me really understand English. But my friends who actually are proficient in there non-native languages say that it helps. Are we asked to study multiple languages? This is an area I am sure is better addressed, but are we studying the differences in the languages. The values enshrined in .Net over Perl over Python over Ruby over Assembly etc? To see why some languages suck at some tasks and other languages are great for other tasks. Are we taught how to build a simple language, and then a simple language on top of another language, and then a DSL. To see the various amounts of effort required to achieve the simplest of things?

Where are the art and craft classes of software development, where the value is on the aesthetic of the program and on the code. Where is the poetry class of software design where we focus on writing that one-liner of pearl? Where is the class that teaches us the code smells and how to fix them.

What about the journalism class where we learn to communicate to the masses. Where we learn to speak to an audience larger than one passionate reader. To publish on a deadline, to not write above our readership. To realize that even though we may have an extended vocabulary and that is some thing that we should pride our selves on, that we must remember that people other than us are going to be reading it and that the goal is comprehension not on flexing our vocabulary might.

Ok, well I think I have pushed this metaphor about as far as I want to. Thank you for reading, I hope that it inspires you to think about what you will learn next.

-d

Categories: Communities

Consuming URL Shortening Services - Cligs

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 13:50
This is another article that talks about URL shortening services. Today we are going to talk about Cligs, one of the popular shortening services on the web.
Categories: Communities

Bind ScrollBarToTextBox and TextBoxToScrollBar in Silverlight

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 11:58
Thisarticle is all about binding of scrollbar to textbox and textbox to scrollbar with small piece of code in silverlight.
Categories: Communities

TreeView control in asp.net 3.5

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 10:53
In this article I am going to discuss how to create Treeview control in asp.net 3.5.
Categories: Communities

Photo Slideshow in Silverlight 4

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 10:11
This article demonstrates you how to make pictures slideshow, pictures list, pictures paging, pictures rotating in Silverlight 4.
Categories: Communities

Combining VS 2008 and VS 2010

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 08:21
This article discusses about how programmers can upgrade to VS2010 while the remaining team members on the current project are still using VS 2008.
Categories: Communities

Commerce Server 2007 - Sub Systems

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 08:01
This article gives you overview of the commerce server 2007 and the features of that. Commerce server 2007 mainly used in E-commerce and Portal based sites.
Categories: Communities

MSChart - Drilldown Charts: Part I

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 07:33
In this article you will learn how to create MSChart - Drilldown Charts with simple random data.
Categories: Communities

MSChart State Management

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 06:38
MSChart have a problem of maintaining data state during post back. When a post back happens the Chart will get blank or data get cleared.
Categories: Communities

New Features of WCF 4.0: Part V

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 06:18
In this series of article, I will illustrate each feature explaining the principles and showing some examples.
Categories: Communities

Create Restful WCF Service API

C-Sharpcorner - Latest Articles - Mon, 08/30/2010 - 05:56
In this article I am going to explain you how to implement restful service API using WCF 4.0 . The Created API returns XML and JSON data using WCF attribute.
Categories: Communities