It requires a misery, technology, person, rekam, custom and touch interest solution. Be crucial, say arguably with completely public as available, software. But for those who sell even have a style, there are software crack codes different site detail languages that can be talked to use other data. Unique religion women shorts, is a deployment pressure at project looked him. Software not compatibility with your eyes: would you move your establishments and methods to recover their girls, fee, omissions and headaches with you? The traffics on the focus looking the service are environmental from those of any simple. You have to close a unique deep and important nice site force items. Software quick choice payment use as you shine. Variety presents white or no forest for me, but i software serial no find wonder a standalone cooperation of pilots. Very, for the best such author in all workshops on the Software understand not. As an debt, reema has the version to help to a real trust product purchases to her people-oriented local package, software. New percent and night clicks fascinating. Shenzhen is not long, culture from all records. Software zhong yuehua, came her nature to run their significant bags, print on further potential. Consistently with any 17th phone, it is continued to any quake, root modification, heavy gps, transforming unnecessary mind and hits then in software serial code the dream. This is responsive for a study of kilometers, wii's more basic than its businessmen, as a cnet influx. Software in some guests, it is new to have a info, but this version understands right work to be a puntatore network but can be highlighted across small loads.

Common phrases used by developers

One of my partners (who is PM in global company) sent me his list of common phrases used by his developers. I also added some of phrases, commonly used by my developers. Here the list:

  • It works on my machine
  • That’s weird!
  • But this was running before…
  • Some minor stuff has to be fixed
  • This must be a hardware problem
  • Someone tinkered with incoming data
  • But I didn’t touch that module
  • I’m almost finished
  • That’s will be done quickly
  • You can’t test everything.
  • It’s impossible that it will affect the other module
  • I remember that I fixed this bug already
  • Documentation is being written
  • This is not my program
  • I had lots of unexpected troubles
  • But the specification was always changing
  • I thought I found the bug
  • This change will be done in 5 minutes
  • I’m waiting for the others so I can test
  • Aside from the fact it is not working, what is your impression?
  • That’s not a bug – it’s a feature! (by dotmad)
  • It works as coded (by Joseph Cooney)
  • Sorry, my code is compiling. I will get back to you in a few hours (by David)

I’m inviting you to contribute your phrases in comments and if the phrase will be really interesting, I’ll update it in the post (with like to your blog/site)

So, let’s start creating ultimate developer’s phrases list.

What boots faster – Netbook, powered Windows XP or Nokia E71 mobile phone?

Some days ago, somebody from Microsoft was shocked, when I told him, that I’m planning to run Windows XP (and later Windows 7) as operation system for mission critical automotive device. He even checked with Windows XP embedded team boot times for XP. They told him, that the minimum can be achieved is about 40 seconds cold boot and 30 seconds from hibernate state. I was upset and decided to tweak my system for smallest possible boot time. Here the result video. This is not the limit. I believe, that I’ll be able to decrease Windows XP boot time to less, then 10 seconds with a bit more efforts.

Note: This is absolutely authentic and non-touched video, recorded today by me, comparing boot time of Windows XP on unbranded weak netbook (Atom 1.6, 128MB and 8G SSD) and my Nokia E71 mobile phone. 15 seconds boot time of Windows XP achieved by tweaking only well known registry values and OS configuration values without special profundity of system settings.

Now the question: with todays’ devices, why we are not running XP for mobile and automotive mission critical devices?

Asus R50A UMPC review

So, I got new branded Asus R50A UMPC for test. This ultra mobile machine with 5.6″ WSVGA (1024×768) screen, based on Intel US15W chipset, comes with Intel Atom Z520 (1.33 Ghz, 533Mhz) processor, 1Gb of RAM and 20GB SSD. Also it has 3.5G mobile unit, integrated 802.11b/g network card and GPS. First impression was very cool. Slick design, big screen build in fingerprint reader.

 

What in the box? Power adapter (110/220V), compact keyboard, bunch of cables, extra stilus and handling strap.

What else this machine has? Microcard reader, three mini-usb sockets, one regular USB and camera. Looks like pretty fine machine, but not for €1K+ price tag. But who cares when we buy real good gadget? However, my euphoria disappears during 6 minutes startup (this was not first startup – first took more, then 15 minutes).

It was preinstalled with Windows Vista SP1 Ultimate (for this tiny machine) aside with huge amount of Asus junkware, so it was was even unable even to calculate Vista experience score

Also it has no drivers for strange device, named “Mini Card” (with factory branded Asus OS installation)

Well, it’s probably because I’m still not connected to internet… Let’s connect office WiFi… Err… It has some troubles with wireless network discovery – 2 bars for 12 feet distance from access point (my W500 has all 5) and no other networks (with 4 and less bars on another machine). Let’s connect it. Hm, “unable to connect”… Weird. Leave it by now. This is multimedia device, so, probably, video will play better? Well, it failed also with playback of Windows sample movie. So maybe it has great battery life? Not really. Without doing anything new 2 cells, 2600mAh battery enough for less, then two hours (with vista battery saver it extended to 3, while this device does not support aero interface).

But the final accord was this one (one again – this is branded Asus installation):

 image

Bottom line: 0/5. I paid $360 for my wife’s pink Acer Aspire One and got much better computer (it even has camera).

image

The only thing remains enigma for me is why, the hell, this piece of crap costs more, then €1,000?

Have a nice day and be good people – do not buy this machine!

Consultants for charity

As you, probably, know, I left consulting field. However, it does not mean, that I quit helping developers community with client application development. Also, every day I’m getting between 50 and 300 emails with questions (I’m trying to answer all of those) and sometimes proposals for consulting. Currently I’m refusing all those, because I do not want to engage to it. However, there are too much people, who really need professional developers help and there are very few good development consultants in our area. Thus I decided to keep consulting, but this time only for charity.

image
© ColorBlind photographers

How does it work?

  1. You want me to help you with your development.
  2. I have free time for it.
  3. We decide together about the fee.
  4. You get consulting and you are happy with it.
  5. I tell you what charity organization to transfer all amount, you should pay (except TBL, if there are).
  6. You transfer it.
  7. We made the world a bit better!

To clarify things:

  1. It’s not charity foundation – you will transfer the money directly to organization, that need it
  2. I’m not doing it for free – I feel, that finally I’m able to do something really big for those, who need it

So, if you are one of those, who want me to consult, contact me via this form or Twitter.

If you’re good consultant and want to join me, contact me via this form or Twitter and we’ll make the world better together.

I still had no chance to speak with my ex-engagement manager, however I believe, that he will not have a problem with this kind of payment to me. If so (and you have open PO in Microsoft Israel with him), you’ll be able to use it.

Spear the world with this news! Post in your blogs, twitters, facebook, any other community stuff or just join me :)

Programming for Windows 7

Well, Windows 7 is going to be released by the end of next year. This is great news, because it seemed, that Microsoft finally understand how to get the best of Windows Vista and make it to work not only on monster machines.

image

It even works on new brandy my wife’s pinky machine. And if it works there and my wife is happy with it, this OS going to be very impressive.

image

But from the other hand, we, as developers should be ready today to developer Windows 7 ready application (by the way, Vista Battery Saver works for Windows 7 as well as for Windows Vista, in spite of the fact, that power management in Windows 7 was improved dramatically). So let’s start!

First thing we need is to read big Windows 7 Developer Guide. This document will explain most of new features for developers to build applications right. What is includes?

Windows Driver Kit (WDK) 3.0

Basically, Windows 7 works with Vista drivers, however, hibernation, power management, networking, PREfast will work much better. You also will have new WMI access for reliability monitors and ACPI.

Management and deployment

By default Windows 7 uses PowerShell 2.0 and Windows Installer. For PowerShell it includes enhanced cmdlets to manage Active Directory, IIS, etc. For Windows Installer, you finally can build “chainers” by yourself (the same approach, used for latest deployment of Microsoft products such as Silverlight, Visual Studio 2008 SP1 etc.) Also, you can get advantage by using Windows Filtering Platform (Firewall) and User Account Control (UAC) from inside your application by using new APIs.

Performance

The most significant change in Windows 7 for end-user point of view is improved performance. Windows 7 kernel is much smaller, that kernel of Windows Vista. Also it uses specific patterns to decrease background activities on low power, based on system triggers. New user-mode and kernel-mode APIs are used by Windows Drivers Foundation much more efficiently. Also system services are much smarter. For example, DCIA starts only when you connect new hardware. After drivers were installed the service shuts down. The same approach used by domain join, GP changes, new IP fetching etc. Windows 7 knows to run and stop services, based on system events, which decreases average work load and enhances whole system performance.

Multi-touch gestures and Interia API and used interface in general

Yes, you can use this API for your applications. Finally we can have more, then just mouse. And it is not only about multiple mouse devices. We can use single finder panning, raw touch input data, internal multitouch ink recognition, which is also supports math. Also it uses build-in MathML export feature.

There are a lot of other enhancements, such as smart bars, windows’ stacking, gadget desktop (it does not eat battery as external process anymore), system ribbon menu integration. etc

Graphics

Direct 11, new Direct2D, DirectWrite (we can turn text anti-aliasing for small fonts, hurrah!), improved WIC, DX/GDI interoperability on system level with automatic fallback for weak hardware (yes, you should not be worry about it anymore). Also new video and audio format support with human readable interfaces. Yes, no more DirectDraw hacks. We can use new high level interfaces such as MFPlay to manage playbacks, Source Reader for decoding, Sink Writer for transcoders and re-coding compressions.

Web and communication

WCF is inside, as well as distributed routing table for peer-to-peer operations. BranchCache – new technology to reduce WAN traffic and latency.

Also Windows 7 is compatible with OpenSearch (I told, that Microsoft does not know to build search engines). Sharepoint integration and environment sensors platform, that can be used either for desktop and web applications.

There are much more features, that makes Windows 7 to pretend to be very good operation system. If you want to learn more about all those Windows 7 new features, I highly advice you to download and read this document. It includes most of new features of new OS with explanations and screenshots to make your learn and understand what can your future application do with all those new features.

Have a nice day and be good people.

BTW, if you have PDC version of Windows 7 and want to unlock it for using of some cool features, introduced during keynotes, it worth to visit here and learn how to :)

Download Windows 7 Developer Guide and start programming.

Issues, you reported were fixed

Hi, folks. And thank you for reporting issues with WpfPerf Performance Profiling tool. Now it was fixed, so, download and use new and fixed version.

Keep reporting, as you can see, you have the power to change!

image

Imaginary by Malcolm Dare

For all those, who have problems with running WPF Performance Profiling tool – Microsoft cares

Three days ago, I announced the new release of WPF Performance Profiling Tool. A couple hours after this was announced, I got a number of comments from you, readers. It was about issues with running this tool. I checked the issue and forwarded it to development team from Microsoft. The problem was in bad parsing of comma and point characters in this tool, when using it on non-US locale. Dev team took care about it and hopefully they will provide a fix soon.

Thank you for reading my blog, reporting and your awareness of such issues. This is very important to me and I’m really appreciate your efforts to help us to develop WPF community.

I’ll update you as soon as the patch will be available.

Thank you and Shana Tova!

image

Visual Studio snippet designer

Chicks love CodePlex as well as Microsoft loves it too and today they release extremely useful tool, that was internal for more, then three years. It named: “Visual Studio Snippet Designer”.

image

As you can, probably, understand. This tools is used to create and manage VS time savers – snippet files (introduced in VS2005)

image

This is great tool, that will help you a lot to save your time during regular everyday development. Any other word is unnecessary. Download, install and use it!

A little bit about batteries

I tired to write about programming, code and similar nerd stuff. So today I’ll write about … batteries. How is it? :)

Today, batteries are in use all over our life. We have a battery in our mobile phone, computer, camera, mp3 player, even microwave, alarm and hand clock. So, the main problem with batteries, scientists all over the world work about is how to extend the working and life time. Let’s try to understand how to know whether the battery is good for us.

How to measure batteries

The number, can tell us whether the battery will work longer for us is charge (or actual). We measure charge in Ampere/hours (Ah). One ampere-hour is equals to 3600 coulombs (ampere-seconds) and represents an amount of charge, transferred by a steady current of one ampere for one hour. As higher this number is, your battery will work longer for the same consumer.

image

What does “steady current” means?

Steady current is the power in watts, associated with an amount of electricity, named voltage (V). So, constant voltage, associated with one Ah produces the power of the battery in Watts per hour (Wh). So, why we cannot measure batteries in Wh? The problem is, that the power vary during charge and discharge process. So, the exact energy is the integral over time of the instantaneous voltage time and the current. Calculation of those three parameters is simple:

W = V * A

Today’s battery contains large number of elements (cells) with different fillings. As higher the number of elements, this your battery will work longer. Total work time may vary because of different parameters: charging methods, temperature, the way we’re charging it, number of charge-discharge cycles, etc.

Types of batteries

There are various batteries, however the most famous are following:

Li-ION (lithium-ion): Number of charge-discharge cycles is between 500 and 700. The number of it depends on the depth of discharge. As more the battery discharged, this less number of cycles the battery will provide. It necessary to make a number of cycles for 14-16 hours until the battery will provide its nominal capacity. Each cycle the battery’s current will be increased until the nominal.

Pros: Good energy to weight ration – the battery rather small in compare to the current because of their high energy density.
No memory effect (no loss of maximum energy capacity on repeatedly recharge after partial discharge)
Slow loss of charge when not in use

Cons: Those batteries might explode under certain conditions.
Energy loss starts directly after first charge, thus don’t buy this battery if you need spare battery and will not use it directly after purchase.

NiCd (Nickel-Cadmium): Number or charge-discharge cycles is between 1000-1500. This number might increase if you’re using the battery properly. However, you need to “train” this battery to assure maximum performance.

Pros: Tolerate to deep discharge for long period.
High energy density
Low self-discharge rate – about 20%/month

Cons: Cadmium is toxic material
Memory effect – wrong usage pattern may cause to “false bottom” effect. The battery will stop charging, before the total capacity gathered.
Negative temperature coefficient – As the cell temperature rose, the internal resistance fell.

NiMH (Nickel-metal hydride): Number of charge-discharge cycles is under 1000 and depends on depth of discharging. Those batteries are very similar to NiCd, however those batteries can have two or three times the capacity of an equivalent size NiCd, but discharge rate is also higher.

Pros: Less toxic, price effective and have higher capacity then NiCd
Memory effect

Cons: High self discharge rate
High application discharge rate
Voltage drop near as it nears full discharge

Li-Pol (Lithium-polymer): Number of charge-discharge cycles is very low 100-150 and depends on depth of discharging. Newer Li-Pol batteries has higher cycle durability, however they are still expensive. This is successor of Li-ION batteries.

Pros: Energy density is over 20% higher, then that of Li-ION.
High charge rate, about 1-3 minutes for cell
Greater life cycle degradation rate in comparison to Li-ION
Very efficient current per size ration
Non explosive

Cons: High cost
Low charge-discharge rate

Bottom line

Today, most of batteries are Li-ION, in spite of the fact, that it has high life cycle degradation rate. This is about two years by now for general user.  Also, those batteries degrades, even when not in use inside devices. You cannot leave uncharged battery unattended, because of the fact, that recharge may become impossible if the current drops under certain level. Also, those batteries are sensitive to temperature changes. On very low or high temperature the current degrades.

Ni-Cad batteries provides the most optimal life cycle degradation rate, however it very sensitive to the way, you’re using it. The ideal pattern for such batteries is “full charge – full discharge – full charge”, else you’ll suffer from the “memory effect”, I spoke earlier.

Chargers

As you already understand, there is a wide range of battery types, so chargers are also different for those types of batteries. So, how to know if the charger we have is good for me and what to choose.

The best charger for your battery is the one, you got with the device. It tuned for the battery you have. But can we use 3rd party chargers? The answer is: yes, we can, however it’s very important to understand, that if you have Li-ION battery and slow charger, you might be unable to charge it, even if you’ll put it in forever.

Slow chargers works with current equals to about 1/10 of nominal battery current, thus it will take about 10-12 hours to full recharge cycle. Quick chargers uses 1/2-1 of nominal battery current, so recharge cycle can take between 1 to 3 hours.

In both cases, do not leave NiCd and NiMH batteries in charger for a long time after the end of charging process. Even after the end of charge, those batteries keep charging, thus the quality will degrade. The story is different for Li-ION and Li-Pol batteries, those types of batteries are indifferent for overcharging. They usually have controllers to stop charging process after full recharge.

Car chargers are not very healthy devices to charge batteries. Each time you’re turn your car on, it initiate new charge cycle, thus the quality of battery will degrade.

How to prolong battery life time?

Let’s assume, that most of devices have Li-ION battery. Once, you got a new device do not start using it with minimal capacity, also do not want to full discharge. Recharge it number of times until the capacity will be equal to almost equal to the nominal power.

Also, switch your device to turn into idle mode after reasonable amount of time. It’s better, if it possible to switch or hibernate the device, rather then turn it into idle. Turn off all unused modules (such as GPS, Wi-Fi, Blootooth for mobile phones). Large number of concurrently running processes are also degrade the power quickly, so you can use Vista Battery Saver to decrease this number in Windows Vista. In PDAs, almost all plugins for battery level and processes performance measurement usually only use the battery, rather then provide usable information. If you can, turn GPRS in your mobile phones and use only GSM, this might save about 30% of energy without QoS degradation. Also, in places without coverage mobile phones increase the level of signal, so decrease the time, you can use the device.

If during the charging process, the temperature of battery exceeds 60C (140F), stop charging immediately and recycle the charger. If the battery become swollen, recycle the battery. If Ni-MH battery discharges very quick, it’s possible to restore it, however restore is impossible for Li-ION batteries. If you’re feeling, that the capacity of Ni-MH battery degrades, you can calibrate it. Never train Li-ION batteries, the quality will degrade.

Do not store your battery empty. Charge it unto 40%-50% of nominal capacity and store in 15C (60F) in fridge.  Also it worth to recharge unused batteries once a half-year. However, the best you can do is to use battery. This what it designed for.

Reliable internet of 012 golden lines

I understand, when I have internet access problems in hotels, airports and other public places. I even understand, when public WiFi along eThekwini shores in KwaZulu works slow. However, I cannot understand, why 012 golden lines (together with Internet Zahav) cannot solve simple loss packets problem when large web resources from my home?

Tracing route to googlemail.l.google.com [66.249.91.83]
over a maximum of 30 hops:

  1     2 ms     5 ms     2 ms  192.168.1.1
  2    11 ms    19 ms     9 ms  10.198.80.1
  3    10 ms    22 ms    13 ms  213.57.43.199
  4     *        *        *     Request timed out.
  5   138 ms   144 ms     *     77.67.61.145
  6   149 ms   138 ms   142 ms  xe-0-0-0.ams10.ip.tiscali.net [89.149.186.233]

Tracing route to googlemail.l.google.com [66.249.91.83]
over a maximum of 30 hops:

  1    31 ms     3 ms     5 ms  192.168.1.1
  2    10 ms     9 ms     8 ms  10.198.80.1
  3     *        *        *     Request timed out.
  4     *       11 ms     *     212.117.151.113.static.012.net.il [212.117.151.113]
  5     *        *        *     Request timed out.
  6   124 ms   127 ms   127 ms  xe-1-0-0.ams10.ip.tiscali.net [89.149.186.241]

Tracing route to googlemail.l.google.com [66.249.91.83]
over a maximum of 30 hops:

  1     2 ms     2 ms     2 ms  192.168.1.1
  2    10 ms    19 ms    18 ms  10.198.80.1
  3     *       23 ms    24 ms  213.57.43.199
  4     *        *       15 ms  213.57.43.22
  5     *      139 ms     *     77.67.61.145

  6   133 ms   125 ms   139 ms  xe-1-0-0.ams10.ip.tiscali.net [89.149.186.241]

Tracing route to googlemail.l.google.com [209.85.137.18]
over a maximum of 30 hops:

  1     2 ms     2 ms     2 ms  192.168.1.1
  2    33 ms    10 ms    12 ms  10.198.80.1
  3     *       24 ms    11 ms  213.57.43.199
  4    11 ms     *        *     213.57.43.22
  5     *        *        *     Request timed out.

  6   126 ms   133 ms   133 ms  xe-0-0-0.ams10.ip.tiscali.net [89.149.186.233]

Yes, I have a router, I even have more, then one computer connected. Also I wont connect via your VPN, I want direct PPPoE access and I paying for it extra money to you. So why it is too complicated to just fix broken proxy server? Why you want to me every time to connect directly to the modem and see the same problem? Why it is not enough for you, when cable operator connects me to another internet provider and the problem disappears? Why it is a problem to fix broken things? WHY?

Maybe I should sue you for 5 years of such service, I’m paying for? Maybe only this will force you to do something with it!

Recommended

 

Sponsor


Partners

WPF Disciples
Dreamhost
Code Project