Wednesday, April 3, 2013

Apple app store - quick app review


Making my first iOS app went rather quick and without any major problems. It helped of course, that I already made an app for a client of mine! 

After the app was accepted by the Apple review process and was available for the public I found out there was a small problem with the app. 
It turned out that the server I was using to get the info for the app was having some problems. If I wouldn’t do anything about it this could grow out to be a big problem! 
In the end this could mean my app would show nothing at all! 

The solution was easy enough; I added another server to the app so if one is not available it will automatically use the other one.

The bigger problem was that I needed to put the app again in the Apple review process which would take another six days to get reviewed! Six days would be too much for my app, not showing any data! This would for sure give me some bad reviews in the store!

After googling a bit I found that there is an “expedited review process” for the App Store! This means if you ask nicely and the Apple review guys agree that you have a “situation” that needs looking at, they will review the app as soon as possible! I tried to describe my problem as good as possible and they agreed to the expedited review! 

From solving my app problem, to having a new version in the app store took all in all 1 day! 
Great! The review guys from Apple really helped me out here!

The link to the expedited review process is:

The link to my app (Mircules DX Cluster) is:

Tuesday, February 7, 2012

HAM Radio!!!

Lately I haven’t been doing a lot of iPhone and iPad development in my spare time, so I haven’t also been writing a lot of blogs about software development. 

The reason for all of this can be found almost 30 years ago!

I used to be very much interested in CB radio (27 mc). For those of you that don’t know what this is, wikipedia describes it as; “a system of short-distance radio communications between individuals on a selection of 40 channels within the 27 mhz (11 m) band”. I used to play around with this when I was between 12 an 15 years old.

Previous October (2011) a friend of mine started to play around with CB radio and he got me also involved in this. After this we started talking about getting the amateur radio license. The license is like a grown up version of CB radio and is actually a lot of studying electronics, electronic circuits and the dynamics of electro magnetic fields, propagation, (types of) antennas and the inner workings of transceivers. My friend is canadian so it’s a bit difficult for him to take a (Dutch) license exam. For me it was a bit easier, so the end of October I got the study material from the Veron (Radio Amateur Organization in the Netherlands) and studied several hours every day in November.  

The 8th of december I took the official government N license exam and I had 0 mistakes; I aced it! The end of December I registered my call sign (PD1CA) with the Agentschap Telecom in the Netherlands. After this I made a quick website ( www.pd1ca.nl) and started to make the airwaves “unsafe” with my second hand bought Yaesu FT-817 and Yaesu FT-897D transceivers!!

There is still a lot to learn although I think the license study prepared me good for my start in the radio amateur / HAM radio world.
I started my quest for the perfect antenna, took my first steps in digital HAM radio (PSK31, RTTY etc..) and am making my first contacts around the world talking to a lot of  people even with the limitations I have with my CEPT Novice license (N License).

The next step will be making iPad and iPhone software for HAM radio, and I’m looking forward to starting this.
Combining my new and my old hobby would be perfect! 

Tuesday, July 26, 2011

ASP.NET webdev server as an external tool

The ASP.NET development server is a very useful tool but now and then I find that I need to use a service or website that I’m developing in another solution than in the one I’m working in. I found that it is easiest just to add the instances of often used services and websites to the external tools list in Visual Studio.

To do this go to the Tools menu in Visual Studio and click on External Tools.
Then click the Add button to add a new item. Give it a title and enter as a command the following:

C:\Program Files (x86)\Common Files\microsoft shared\DevServer\10.0\WebDev.WebServer40.EXE

The path may differ depending on your windows version and installation. I'm using Windows 7 with Visual Studio 2010.
The arguments should be:

/port:XXXXX /path:SSSSS /vpath:/

Where XXXXX is a port number used for the development web server and SSSSS is the web server / web service path. The /vpath points to the application root of the service or site

For instance:

/port:21000 /path:C:\Sources\MyProject\WcfHost /vpath:/

Now you can start the service from any solution and you don’t need to keep the solution in which the service or site is made open. Just remember at some point to stop the development server again because it will not stop automatically by closing Visual Studio.

Sunday, July 24, 2011

Wordpress or .NET, that's the question!

As a .NET developer I mostly fill my days making ASP.NET websites, and Windows forms application for my big clients. A few months ago I decided to take a look at making Wordpress and Joomla websites. I wanted a tool that would help me make websites for small businesses quickly. Mostly I didn’t want them to come to me later and ask me to change the color of the third word in the second paragraph to red…. In other words they should be able to manage the content of their websites themselves, in an easy way.

Let’s be honest, you can make wonderful websites in .NET but you need a good CMS behind it and a good framework at the front end to quickly make websites with it. If you don’t have this, making a site is a lot of work, maintaining it even more!

In Wordpress on the other hand I can make a good looking, company website in a few hours. This includes registering the URL, putting the website with a hosting company, making the site, doing the styling and putting the first content in it. The downside of a CMS like Wordpress is that making it look and do EXACTLY what you want also involves a lot of work, and with Wordpress you’re stuck with a “simple” scripting language like PHP. PHP doesn’t come close to the powerful languages you have in .NET!

So I decided to cover both sides of the market; the quick and “limited” side of Wordpress and the not so quick but very powerful side of .NET. I will just let it depend on the wallet of the customer!
At the moment I love doing both things so it’s also making my work a lot more interesting!

Friday, June 3, 2011

“The Net”, made by Apple? ;)

I watched the movie “The Net” a few days back again and I noticed that all computers that were used were Mac’s(!) Even the woman from the US consulate in Mexico printed the visa form with a Mac! I guess the makers of the movie made a nice deal with Apple to promote Mac’s! ;)

It was funny to see though that even the viruses that were used in the movie were Mac viruses. A bit unbelievable of course because everybody knows that almost no viruses were made for the Mac! Even more unrealistic was that the same Mac virus that was captured in the beginning of the movie crashed a mainframe at the end of it.

All in all the movie was enjoyable and more realistic when it comes to computers, hacking and programming than most, but I guess software developers like me notice only the inconsistencies.

Friday, May 20, 2011

My own little unix server

I love my Macbook Pro I really do! I do Microsoft .NET software development and for this it’s great. Of course I couldn’t do the work without VMWare because .NET is still mostly / only working on Windows machines but that’s another story.

After using the Macbook Pro for some months I found out that OSX has a problem; every now and then the Hard disk gets corrupted. I think this might have to do with the fact that OSX originally used to be Unix; a server OS. Unix Servers are made to run continuously,no administrator turns of his servers at the end of the day, but I do turn of my Macbook!

Especially when you hibernate your Mac, now and then you will get the dreaded message saying The volume Macintosh HD was found corrupt and needs to be repaired. Now in most situations repairing will go ok and after that it’s business as usual. But once in a while this will not work and you need to restore the time machine backup you of course made, didn’t you? Because my notebook harddisk is 1TB this can take hours and hours! Did I tell you I hate waiting?!

After already resigning to the fact that every now and then it would be necessary to do a restore of my backup I stumbled upon a great little tool. The look and feel took me back a bit to the old MSDOS days (no graphics, everything character based) but who cares if it works. The tool is called AppleJack ( http://applejack.sourceforge.net ) and is OpenSource (which means free!).

After installing it you need to start up the Macbook holding the CMD-S keys. The Mac will start in single user, character based mode. Type ‘applejack’ at the prompt and a small and simple menu will show. Chose option ‘a’ for ‘autopilot’ and the whole repair cycle will start. I found that 99 out of 100 this will repair everything and withing 10 minutes it’s back to business as usual; I just love this tool!

Saturday, April 30, 2011

Stored procedures or Embedded SQL???

One of the clients I worked for didn’t allow it’s developers to use embedded SQL in their sourcecode. Only the usage of stored procedures was allowed. Applications only got the database authorization to call stored procedures, nothing else. To me this is the most optimal use of database security!

The DBA department made one stored procedure per table to select everything and one to select records on bases of their primary key. All other stored procedures that were necessary for an application were made by developers, but before they could be used in a production environment the DBA’s reviewed them. This way the DBA’s could keep an eye on how different tables were used and how this was affecting the database / DBMS. If necessary they optimized the stored procedures or just sent it back to the developers to have them optimize it themselves. In general this made for optimized stored procedures with a uniform way of coding in them. I liked this way of working and try to do this also with other clients, if they allow me to do this of course.

In general for me the advantages of stored procedures are:
  1. Security (only expose stored procedures to the big bad world outside, nothing else)
  2. Speed; because the DBMS optimizer makes a one time plan for execution (this has advantages and disadvantages but that’s another discussion altogther)
  3. Reusable code / procedures.
  4. Reviewable code. Reviewable by DBA’s that have the right knowledge for optimizing stored procedures. No .NET or other knowledge is necessary for these reviews!
Disadvantages:
….
So according to me we should use stored procedures more often!