Showing posts with label c. Show all posts
Showing posts with label c. Show all posts

Saturday, May 27, 2017

Localisation gone bad in C

Localisation gone bad in C


Im doing maintenance on a huge C# application that was developed for a swedish customer. A while ago it was decided that the application should be sold outside Sweden, and therefore it had to be localised in english, romanian, chinese, etc. The application consists of roughly 200 controls/panels and forms. It was a huge task to translate everything, and from what I now can see MS Visual Studio 2005 did not help very much (as Im maintaining it right now).

Apparently one new thing in VS, is that you can localise each and every control/form in the designer. That is nice when you have a few forms and controls that do not use the same words all the time. The developer creates a form, changes the language property and inserts all the translated texts. It is very easy to change a word in swedish to english, and it is all GUI based. But what happens if you have 200 controls/forms that share many texts? I have not figured out how to do that in VS2005 and GUI elements.

Developers are lazy (and they should be), so they will use the easiest way out. In this case it meant that nobody cared that the same words were used in many forms. Sometimes, people missed a label here and there. And for me maintaining it, it isnt nice.

I demand these things out of a localisation framework
  • One file for each language. - VS2005 brings you one file for each language and GUI control. In the project it means 1,000 new XML files to handle. That is not good.
  • One method call to get the texts for a language. - Yes, .NET helps partly with this (I will blog another rant about this later)
  • Ability to change locale during runtime. - Yes, it is possible in .NET.
I need the following tools:
  • Tool to find duplicates so they can be erased, and defined in one place. (Think OO but with languages) - VS2005 does not help you at all.
  • Tool to spell check localisation files. Apparently there is no such tool out there. - I have not seen anything in VS2005.
  • Tool to show missing translations for a language. - Nope, the company had to build their own software to extract missing translations and merging.
So what I got was to "translate" around 200 "missing" translation in an XML file, out of them there were 50 "OK", 5 "Cancel", 10 "Index", 15 "Close", etc. I can sure tell you that it could have been very tedious, but I built a very simple tool that would go through the file, so I didnt have to bother with copying/pasting. But once again, I have to develop tools to do stuff that the IDE should have helped me with.

Side note:
They discovered a side effect of adding new languages to the project files, for every new language you had to add 200 files, this made the project bigger and bigger. Now it takes eons to compile, and one of the core developers came up with the idea to remove all localisation files from the project files. When that was done, the time to compile was drastically cut which was good. Unfortunately we were in integration testing and could not test any of the localisation bug fixes (Doh).

So what did they end up with when using Visual Studio and .NET?
  • Duplicated texts all over the resource files.
  • 200 new files for each language
  • Compilation time sky rocketed (I will bring stats for this later this week)
  • Developed their own tools to handle the resource files (RESX) which require maintenance, etc.
  • Forms that were not properly translated, which wasnt found out until the system test phase (or even later).
  • And lets not forget the need to update the size of every button/label to cater for romanian texts. That is also tedious and really unnecessary work.
What is the proper way to do localisation in .NET and Visual Studio? What did they do wrong? What is the easier way out?

Available link for download

Read more »

Tuesday, March 21, 2017

M A C E v1 04 APK Download

M A C E v1 04 APK Download


M.A.C.E. v1.04 APK Download

MACE is a classic space shoot em up, inspired by the legendary Amiga games of this genre. Handdrawn 2D graphics in HD resolutions, parallax scrolling, explosion effects and optimized games mechanics, combined with the proven gameplay are transporting the "Spirit of Amiga" in todays Age.



M.A.C.E. Apk DownloadM.A.C.E. v1.04 APK Download play.google.com.mace
In MACE, the player navigates a spaceship across three different worlds with 6 vertical scrolling levels and various enemies, trying to destroy or avoid them. Hidden items (weapons, bombs, energy),
upgradeable weapons and accessories, such as rocket and companions help to defeat the enemy in difficult battles.
Features:
- 3 different worlds
- 18 levels
- 3 big end bosses
- endless waves with unique enemies
- 3 difficult levels (easy, normal, hard)
- 3 gfx details for lower and faster devices
- fantastic gameplay for many hours
- brilliant handdrawn graphics
- 30 minutes epic soundtrack
- Achievements
- online highscores
- 15 different weapons (5 types, 3 upgrades each)
- additionals: companion, rocket, shield, smart bomb
- hidden Items für weapons, lives, energy, rocket, companion, bomb
Definition M.A.C.E.:
Military Alliance of Common Earth
Founded after the first alien invasion on earth in the year 2054. M.A.C.E. is the epitome of the new cohesion of all peoples of the earth to fight against the aliens to serve life on earth in a military path.
History:
While heavy fights rages on earth against incoming alien ships and the M.A.C.E. units are to prevent the construction of additional land bases for the alien ships, a group of specially trained fight pilots whith space warships try to prevent the arrival of more aliens and distroy the alien mother ships and troops of aliens.
Your mission:
Fight in an exceptional space mission by foreign galaxies to prevent the arrival of more alien swarms on the earth. Your spaceship is one of the first one which is built by people using alien technologies
including engines, weapons and shields to survive against the aliens.

M.A.C.E. - the ultimate space shooter !
Required Android O/S : 2.2+

Download : Apk Free Download
M.A.C.E. - screenshot thumbnailM.A.C.E. - screenshot thumbnailM.A.C.E. - screenshot thumbnailM.A.C.E. - screenshot thumbnail

Download : 91Mb APK+OBB
M.A.C.E. v1.04 APK Download

Available link for download

Read more »

Wednesday, March 8, 2017

Loving my A C and the combo of Pineapple and Zucchini

Loving my A C and the combo of Pineapple and Zucchini


  The weather has been EXTREMELY HOT this past week here in Southern NH.  Temps have been in the high 90s to low 100s.  Usually for the month of July we have temps in the high 70s to 80s sometimes the 90s but hardly ever in the 100s.  Believe it or not I have baked more this past week than I have for the whole month of July. What is wrong with me?! 

 Through all my time baking this past week I have developed a very strong relationship with my A/C inside my house. Each time I have turned on the oven to pre-heat I bless and praise my A/C for its beautiful cool air it is providing us as it competes with the heat of the oven.



Just as I have shown appreciation and happiness to my air conditioner I have also grown to love the brilliant idea that combining pineapple with zucchini to make a quick and yummy bread is fabulously dlish.  Oh. My. Yumminess.  What a LOVELY pair these two make.  The taste and texture of them together marry wonderfully into a quick sweet bread.  I dont know why I havent seen such a concept until now.  Have I been totally out of the loop not having the knowledge that by adding pineapple to a zucchini bread recipe is not that unusual? For those of you that have yet to see this amazing kind of recipe before definitely join me in stirring up a batch. 



Not to worry this recipe makes TWO lovely loaves of bread - share one with others or plan ahead and freeze it for that perfect occasion that calls for a zucchini and pineapple bread.

Pineapple Zucchini Bread
(recipe discovered on Tasty Kitchen from member, sns717)

Ingredients:

3 whole eggs
1 cup oil (I used canola oil)
2 cups sugar
2 tsp vanilla extract
2 cups zucchini, shredded
small can of chunk pineapple - I cut my chunk pineapple into 4ths (the original recipe call for crushed pineapple)


3 cups AP flour
2 tsp baking soda
1/2 tsp baking powder
1 tsp salt
1 1/2 tsp ground cinnamon
3/4 tsp ground nutmeg
1 cup chopped walnuts, optional

Directions:

1. Preheat oven to 350 degrees F.  Grease two 9x5 bread loaf pans and set aside.

2. In a large bowl beat eggs to blend.  Add in oil, sugar and vanilla extract. Beat all together for a couple of minutes until mixture becomes thick and creamy.

3. Next add in shredded zucchini, pineapple, flour, baking soda, baking powder, salt, spices and nuts (if you wish).

4. Divide batter into two prepared pans.  Pop in oven and bake for 50-60 minutes or until a toothpick inserted into center comes out clean.   Cool breads for 10 minutes before removing from pans to cool completely.

Yumminess!


For all of you enjoying this HOT weather, stay cool!

Happy Pineapple Zucchini Bread Baking!


Available link for download

Read more »