Showing posts with label opinion. Show all posts
Showing posts with label opinion. Show all posts

Saturday, 7 April 2018

Geoffery Barnes (Bans) Spammed Me

This is a post about the worst beginner programming post I've ever read...

I've been hounded by someone, I'll call them "LN" they have mailed me and told me that they really like one of my articles from June 2012... Checking my clock, I've posted a whole host of other stuff since.  However, they seem fixated on that pretty old post and strangely have mailed me that it makes perfect reading for "juniors as well as experienced programmers".

I'm really not sure what they're referring to in that month of posts I go from inappropriate references to Ghost Busters, to peoples awful toilet habits to talking about the English football team and shit... Yes, I have a post titled "Hyperdefecation".

In essence this emailer is full of utter crap, so what are they trying to do?  Well they've references another blog I do frequent "coding horrors", but again their comment is off the mark...

Then they ask me to look at their 3000+ word post, except this article is not written by "LN" it's written by one Geoffrey Barnes... And good old Geoff is very quick to reply to comments on his article, he loves his article... He maybe loves it enough to start hassling folks through e-mail, or even setting up mail spam bots to hassle folks with this supposed programming experience? Maybe...

The problem with this?  Well, he's hassled me... The article isn't very good, and I'm going to review it... Right now... So, get a cuppa, take a seat, and lets digest the glorious fail that is:


Because, yes folks, it's not actually very insightful and draws from some very dubious sources...

For example, it quickly attempts to establish weight for the arguments to come, with the statement:

"according the U.S. Bureau of Labor and Statistics, in the United States"

Fabulous, the US government... Except, the link does not go to the US Bureau of Labour and Statistics (yes, I'm English and spell Labour correctly) no the article goes to the "webopedia" website, think of a lower market wikipedia here with less over sight.

This page on webopedia does indeed have the above "fact", however it's attributed to "Hour of Code" not the US Government. And Hour of Code is part of "Computer Science Education Week" and it-itself does not state this, at least not clearly, anywhere... So that's article argument number one blown right out of the water, just by a little clicking.  I was at this point immediately put off this article which is trying to give itself false gravitas.

I persisted in reading however, clearly LN wanted to convey some message to me...  The very next paragraph then called out to me:

"most beginning computer programmers spend too much time deciding on which programming language to learn first to the point that much time is wasted choosing the programming language…"

This is what we call an oxymoron you are not a computer programmer until you can program, therefore you must have picked a language to be a computer programmer, so you can't as a computer programmer spend anytime to pick your first language... Does anyone get my drift here?  This is sloppy, poor writing, seemingly just to add another link to another "Loud Programmer" article, it's sham within sham right now.

"…time that could have been spent actually coding something useful."

I feel this about the time I've spent reading this article, but let me continue, because we're just getting warm.  And we actually have a valid point... I was hoping for the first of many... "the key point that helped me choose.... was to decide on the particular field I was interested in"... this is exactly right, this is the exact way you choose a programming language, just as you choose any other tool, you have to make sure the tool is fit for purpose, it's no good trying to be a system software engineer (like myself) in a language like Java, you can't write a near bare metal requirements demanding system in Java.  But you can write one in C or C++... So you chose that language to fit your purpose!  This however is not terribly insightful, it's common sense.

What's next in the article then?  Well they present this wonderful graph...




Which tells us the square root of fuck all... "Trends"... Okay... And the vertical axis... "Occurrences"... Right, where were these "Occurrences"..... Python, C++, HTML5 and C all get 6... Six ... What does this mean?  Its complete and utter gibberish nonsensical tosh.

Before the language points begin there's yet another ill thought out quote:

"Almost all major software including mobile applications, desktop applications and web applications have a web based back end, including your anti-virus software."

We're still not enlightened as to whom shat out this thought provoking turd, but lets pick through it... 


Everything has a "web back end", no... What most everything has is some form of remote server based resource, that is we must differentiate between "web" and "networked / intranetworked / internetworked", for you see long before there was an internet as we know it today there was "client-server" computing and before that there was time-sliced multiplexed computing with everyone sharing the same machine, so many writers in technology ignore this history they confuse and cloud their writing by simply jumping to "web", it's not the web, and I hate you saying it's the web, the "web" is perhaps what you view in your browser; that why they're called web-browsers; and yes the server your anti-virus talks to to update it's signatures could be connected to the web, but that does not mean it's back-end is on the web, nor does any of this tell you that almost all programs have web-back-ends at all, they have servers perhaps, but this is just a leap too far, and sets the tone for the following passage.

For the author takes to the high-road, talking about people bashing PHP, but he clearly loves PHP... Personally, I love the security loop-holes in old PHP and it has been superseded on the back-end by better technologies.  But when done right it has a use, and of course that use is in serving dynamic web content easily.  However, the author says it's "THE" (yes the capitols) the most popular programming language... This is in red, just to lend emphasis, clearly he really likes PHP... But then the points to back this argument up... "80% of the web is powered by the one programming languages, PHP"... Really?  Who said?  What stats, I can't find this statistic anywhere.  They also state Facebook is powered by PHP, this is not strictly true, it's written in XHP runs on HipHop for PHP on the back-end, but on the client-side is full of Javascript and I believe there's some Erlang in there.  The author though is set on his premeditated PHP kicker so none of this is mentioned.

"As a PHP Developer you have a large pool of web development projects"... yawn, all you have is web development, that's all you can use PHP for.  Is it useful?  Yes, is it the "BEST" for freelancing?  No, not really, would you get lots of work?  Sort of, but you need so so many supporting skills, HTML, JavaScript, CSS, not to mention some experience in setting up the back-end server services you require to actually run the PHP.  Is PHP a good place to start?  Hell no, the price of entry is HUGE, and you're going to see no return on this initial investment until you're very very good.

His next point?... JavaScript... Well I've already explained this is a huge helper in PHP, but it's a huge helper in any web development task you have, however, there's some huge leaps here... Angular JS and a whole host of other libraries are mentioned, but there's just no getting over the author has literally ignored the biggest draw to Javascript, it's cost of entry is zero, you literally write some code and run it in your browser... The problem?  They've utterly ignored HTML, you have to write javascript into an HTML document within which to load into your browser, without this basic understanding this most elementary concept no-one can make the choice to learn Javascript, like PHP it's an also ran with HTML, so your actual time to entry is quite large, cost zero, but time huge.

I do however agree with their comment "learning Javascript programming will simply make your life easier", yes it will.  But alone it won't make you a programmer.

We do get our first editorial cockup here, there's a "Note" here.  A note appears in text when it's optional to read, or you read it without it causing any impact on the flow of the topic at hand.

NOTE: Get milk tomorrow.

You continue your writing as though the reader has no idea about the content of the note, the author of this article however utterly and totally misses this point, and continues to converse with the reader immediately.

Also the content of this note, dubious, not backed up with any points of reference, it is (just as all my writing it) the opinion of the author, yet it's juxtaposition-ed to have this faux gravitas to the lay reader.

Python comes next, perhaps the first language even I would have to allow them to call a programming language for real, rather than a scripting language or presentation language (even if you do write python "scripts" rather than compile it down).  I like python, lots of people do... The author however has a bit of a fantasy splooge here though.  He says that python is the most popular technology on Stack Overflow... Or rather he rips off someone else's diagram saying this, lets look at this:


Unfortunately, again there's no source given for this statistical testicle, I however can present you with this page from stack overflow themselves, with the most recent developer survey where the % categories visited is listed thus:

Python is on there, it gets a whopping 32% but it's not first on the searches.  That's how you quote a reference Geoff.

So who's next?... C# and the .NET framework... It allows you to build web applications for the Microsoft Internet Server.  No, it doesn't, C# (as well as others) are languages which let you write programs which run on the .NET framework.  Which is (I'm ignoring Mono.NET) written by Microsoft to run on all their platforms, desktop, server, internet information services.  Microsoft created .NET as a virtual machine to run their .NET byte-code as a competitor to Java, in terms of market role the two are very similar, both have their own pro's and con's.  As we touched on at the start of the whole article they are yet another tool in your arsenal, however the author pretty much gets .NET all wrong, most least as he's suddenly talking in the present indicative about his not having ambition to learn this language, as he's never wanted to work in a big corp or Microsoft friendly environment.... Dear author, none of your writing thus far makes me want to employ you as a programmer, well at least not as anything other than a web programmer, and even then I'm not too sure from the page's simplistic presentation.

Next up?  Java.... Erg, Gets this totally wrong and is talking personally.  My biggest gripe is with the comment "API back end for most mission critical applications like banking".  I've interviewed for roles in back-end banking, they do not use Java, banking, trading, stock exchange.  Hell even home crypto-mining uses C++ or at a push C, and have done since the 1970's with little plans to change.  Mission critical is not Java's forte.

However, here's comes the authors hard on for web development once again, as he's talking about "Java programming for web development".  Utterly ignoring Java on the desktop but still failing to make the distinction between java as a service (e.g. Jakarta/Tomcat or WebSphere et al) and the classic applets.

What's the hate on Java?  Some crass commentary about not everyone getting on with it... Excuse me, were you not trying to introduce people to programming?  I've created articles about just that, with Java... and they're magnitudes better than this horrible article, check them out here.

To be honest I'm loosing the strength to go on, for next we have a passage on "Mobile Application Development"  there's another statistic mentioned, this time with a reference from Statista, which is a valid reference... Except the reference itself is second hand, the author is quoting a second-hand source as direct fact, it's not.  This is not correct writing, but on the statista reference page there's a "Show Source" link, where does this go?  What font of all knowledge does statista pull its facts?... Well we can't find out, the link goes to the "buy access to us", so their source is themselves?  And good-old Geoff has quoted this as a first hand source?

Who's next on the hit parade?... Swift... From Apple... It's easier to learn than Objective C... As a beginner programmer reading this article, this is yet more utter tosh, they have no point of references, Objective C... You may as well say Swift is easier to learn than Quantum Physics.

But as a beginner you follow a tutorial, so the tutorial for Swift maybe good and the tutorial for Objective C bad, alas I will never know, and nor will the reader of this article.

Moving swiftly on "Java for Android"... Same article smell, new day.  Java is Java right?  The android bit?... Well you're writing Java code to put through something like Buildozer to get an Android app.  I have so many issues with this whole bit that it could be it's own post here on my now longest blog post ever.

The major problem with this idea of writing just one language for Android demeans the android platform, since I've written Python and compiled it to run (with Kivy) on Android.  And Java is intrinsically cross-platform so has nothing directly related to Android.

So the red text greeting "in order to build Android applications you need some skills in Java" no, no you don't, you can write Python or HTML or Javascript and do lots with Android, Android is just an operating system like Windows.  My major problem with this?  This article is meant to be about encouraging beginner programmers, limiting their options is NOT a good move.

And now the biggest steamiest pile of shite?  C++... "C++ is the best programming language for developing computer games".... No, C++ is the one of the better ones for producing fast code, as it's closer to the metal of the computer than anything mentioned thus-far in this whole article, that's why game developers often opt to use C++ for their most low-level components such as developing the graphics engine.

Our Geoff here has a very narrow and limited experience with programming, he's clearly a web or game guy with nothing in between, because in mentioning C++ he's not mentioned C, between the two they've been used to write all the operating systems he's been using to write this very article, all the compilers to create the software he's been working with, the PHP, Java, Pearl, Javascript and python, all of those interpreters are written in one or the other.

There's in fact so much missing in his mention of C++ as to be an insult to programmers everywhere.

The last ticket point on this parade of in practicality?... C#... Again... What gives?  I'm only going to comment that it says... "C# is a dream choice... to learn a multi-purpose programming language"... Multi-purpose, that's games and web then... Thanks Geoff.

His conclusion... I want to rip my own arm off just to have something to smash his keyboard into splinters of plastic to save any poor fuckers from reading such twoddle ever again.

Does he give any tips on which language to pick?  Nope, does he give any clues as to resource to start from?  No!  Does he answer the question where to begin?  Yes...

Yes, he answers... with a Question...


"What is your best programming languages to learn for a beginner?"


We were reading your fucking article to get that answer you schmuck!  You just wasted everyone's time... And what the fuck is wrong with Coffee?



Addendum:  I've had a look through who our little Geoffrey is, seems he is "Loudprogrammer.net" and he has lots of other article... I took a look at one other... His list of influential programmers, and I noted next to Don Knuth he had a link for his boot... Which he used to sell for $22... But now gives away free, this book will show you how to become a $50 an hour earning programmer... in 7 steps... and he has a lovely quirky plaid jacket and glasses on in his picture... Except, on this page his name has changed to Geoffrey Bans... Not Barnes any more... If this guy can't consistently spell his name don't buy his book, don't read his articles.

Oh and when his spam bot bitch starts to nag mail you.... Blog about it, because this guy is a dick.

Friday, 23 September 2016

Reading my Reddit Comments (4001 CPU)

I've recently noticed spells when these pages come up with lots of hits from other sources, by far the most common is google, however, just now and then reddit becomes a source of my views, so I decided to take a look... I was happy, surprise and interested to see the threads... Lets take a look.


By far the most common of my posts to appear in reddit threads are tutorials, an interesting one, at least to me, is my 4001 CPU post.  Of course it is a miss-noma for me to call it the 4001 a CPU... The intel 4001 was a ROM chip, the 4004 was the CPU in that series; strangely no-one spotted that intentional change, and I had thought they would.


Click here for the original post on this blog.

The post is about re-creating an integer CPU in code, it was a forerunner to a series for instructing a class, the next posts, which were planned were to include floating point mathematics, however, the whole series was put on hiatus, and I never returned to the topic.

ninereeds314 on reddit calls me out on this, about my commenting that about 486SX code, where I said: 

"I know this because I once got told off for designing code with my 486SX2 processor - which could only add and subtract in hardware"

He says:

"No - even 8086 had integer multiply and divide instructions. They were slow enough that it was often worth avoiding them and using shift instructions and similar tricks if you could, and they could only work with the AX and DX registers (e.g. for multiply, AX x Source -> DX:AX) but they were there.
The 80386 32-bit versions of DIV, IDIV, MUL and IMUL were very similar, but working with EAX and EDX rather than just AX and DX where appropriate.
It was mostly the 8-bit chips that didn't have integer multiply and divide instructions. IIRC the Motorola 6809 was one of few 8-bit chips to actually have them, but came too late for the peak of 8-bit home computers - I think the best known machine it was used in was the Dragon 32.
Other than that, probably early RISC chips didn't have built-in multiply and divide instructions. One of the principles for RISC (at least years ago) was that every instruction should complete in one cycle, but multiply and divide needed a lot of transistors to do that - in practice they used microcoded algorithms (which was why they were slow)."
He is perfectly correct, my passing comment is slightly out of context, the 486SX could do integer multiplication and division as he says, it could not do floating point however, as it had a defective FPU which they disabled in the factory.  This was what the SX was, a crippled DX, which Intel remarketed as a cheaper chip, rather than throw away.
My article however is about 8-bit code, and I wasn't clear, the 4004 could NOT do direct multiplication of integers, it performed the multiplication by looping, as I had done in my code for the 486SX.  My solution for my code was quicker on the 486SX, which could do the integer add very quickly, but the multiplications were somewhat slower, over 100,000's of calls this did add up, so I avoided it; and in the article I'm only talking about an 8bit integer CPU.  I wasn't clear enough.

However, choralone, comments directly after and spots what I meant, so I know I'm not completely lost.

This discussion continues between ninereeds, choralone and nerd4code, as they discuss more deeply what I'm describing, and indeed I see ninereeds explain that the x87 co-processors, were slower; here he's wrong, once the data was delivered across the FSB to the co-processor they were extremely fast, unfortunately the gated way in which data was shuffled to the cache on the co-processors meant that they were slower, they also only generally ran at 12Mhz, so processing on them compared to a 286 itself was fast, shuffling data to and from them, was quite slow.  As it held the whole bus, with interrupts disabled.

The 387 co-processor was quicker, but could not use a 32bit bus, hence the 486 was designed to have the co-processor (redubbed an FPU) built in, but Intel had fabrication issues, and the photo-lithography techniques of the day left a lot of chips with perfectly functional integer cores, whilst the FPU's were defective... The answer, they severed the link to the FPU, relabelled it the SX and you had an emulating software library call, which vastly slowed the 486SX series down.

About this thread of discussion, I only wished they'd have had it on my actual blog... We like-minded people could have made firm friends!

On the same thread, we spin forward and the user "immibis" picks out my comment about where historically CPU's pick up their first instruction upon power on... he says he finds it hard to believe that they would pick a location in memory.

Well, they did, if a CPU picked 0x00 as it's start point, often it was not clear whether the CPU was reset, just powered, whether all the chips were ready, or the sync signal or whatever technology they had was ready, so it was common practice to have a all lines held low, and then raise on high along with the clock to indicate the start point of the CPU when it was literally first powered on, this high-line in early implementations (and indeed solid state machines before their being silicon) meant they didn't address zero, they in fact addresses a higher part of memory.... 0x800 was a common location for some machines I programmes for early on in my career.

Sometimes, as "jslepicka" points out, it was because the start of the address space was ROM, so the first instruction for execution was in ROM at memory address 2048, the preceding 2047 bytes had library calls, system calls and interrupt handling code in them.  And they were (sometimes) in physically different ROM chips, which could and would be swapped on development machines or embedded devices, so you could upgrade the system calls, patches to calls in these early 2047 bytes often turned into JUMP instructions out to new patches in higher areas of memory beyond the start, and then a series of NO-OP instructions to stop them being used.

However, some early machines had all the RAM at the start, and the ROM on a different address space, so you had to pull a line high to get to ROM over RAM (or vice versa), so you had two different memory spaces to address.  In those systems, you often had the problem that they were dodgy, memory was pretty daggy stuff, and chip failure rate high.

So, common practice, was to skip the first memory RAM chip at boot up, and use the second or third chips, according to the physical wiring diagram.  So the first chip, which would for a matter of pico seconds (or nano seconds, or however long the electricity took to start to flow) have an "over current" or jolt, was NOT being used.  As they genuinely tended to go bad more often, so much so it became routine for vendors, like Digital, to provide a book on how to actually make (with a soldering iron and logic chips!) your own replacement, or expansion memory!



There is also direct evidence of this in the books, of the skipping RAM and ROM, concepts... where you can still see references to the PWRUP functions, which established the power state (or power failure state) of AST (Async-System Trap) entry point addresses.  These AST entry point addresses were never ever 0x00, because... well that's just all the lines pulled low, i.e. no-power, and not indicative of the power being on, or off or in any state really.

Of course, I reference things from way before the PC era, when computers still came with manuals on the actual logic gates within...


Thanks to AlexeyBrin for posting my blog to Reddit, and thanks to all those whom commented, I had fun reading this one.

Wednesday, 15 October 2014

Aircraft History - BF109

Lets talk about the BF109, quite possibly my favourite aircraft of world war 2...

"Yes, I am British with all those spitfires to pick from..."

Please Note, I will be using actual Historical images taken from the Historical period throughout which the 109 was in use by the Luftwaffe.  Therefore there will be images of the aircraft showing their then national insignia, including the swastika.  This is purely for historical purposes and is not intended to cause any distress or offence.  If you have any problems with such images, please do not read beyond this upper visible area.

Also please note, this work is my own words, it has been researched for the purpose of the narrative, however this text is not intended to be a source of reference or true history.  I am not a historian, just an enthusiast.


PROLOGUE
The 109's design preceded most all other nation's contemporary fighter designs, was the first fighter of all the "classic" world war two airframes to see action in a European war, and indeed by the time it met with comparative competition from other modern fighters over France in late 1939 and 1940 it was a well honed machine, having seen four years of development and two years of real combat exposure over its rivals.

In the skies over Spain when the 109 first flew into combat it was described as "ultra modern", not surprising in comparison to the aircraft attempting to oppose them.  This aura followed the 109 until the end of the Battle of Britain, the first stern challenge the type encountered.

Prior to meeting the RAF in numbers in 1940, the 109 had met limited British and the best French fighters, however with the best French offering, the D.520 was still in development and only available in very limited numbers, meaning that the 109 remained supreme compared to the Bloch and Moraine fighters, as well as the Hurricanes flung against it.

However, we're rushing too far a head, let's go back in 1935 with the technical specification issued by the covert legislative bureaux, trying to rebuild the military air power in Germany.

So it was the specification arrived at Bayerische Flugzeugwerk (BFW), whom turned them over to their in house designer Willy Messerschmitt, working with Rober Lusser they produced a design for a monocoque, monoplane, single engine fighter.

The next design code available for the company was design number 109, so a legend was born as the design was dubbed the BF109.

The basis of this design stood the test of time, both pre-war and during the trials of fire which followed it.  Only the Spitfire saw more versions, and more varied use, when comparing the two as stable mates.  However, the BF109's design was slightly older, and it does still retain the title of the "Worlds Most Produced Fighter".

Our discussion of the 109 lineage will span four distinct eras, the pre-war, early war, mid-war and then late-war.  Lets get started...

PREWAR
As we've already mentioned 1935 saw a specification sent to manufacturers for a new fighter to re-equip the fighter arm of the still covert Luftwaffe. 

This new fighter arm was called the Jagdwaffe, the pilots the Jagdflieger.  But before they could get their hands on the 109, much development and evolution of the type had to take place.

BF109V1 - On static engine run test, note there is no-one present in the cockpit, also that the air intake is rounded, unlike in other prototypes, this was of course the Rolls Royce Kestrel Engine at work.

BFW produced ten prototypes from the design, these received the official designation BF109V1 through V10 and went into head-to-head testing and comparison with other designs from Arado and Heinkel.


BF109V4 in Flight, 1936, note the mouth like air-intake below the cowling.

However, the major stumbling block for the Germany of 1935 & '36 was the lack of advanced aero engine designs.  Indeed, the initial engine used in the first prototype was a British Rolls-Royce Kestrel MkVI, which it is reported (but I can't confirm) was attained in exchange for a complete Heinkel He 70 airliner.

The first indigenous German engine fitted to the 109 V-2 prototype was a Junkers Jumo 210 engine, producing just 600 horse power. The Jumo series remained the power plant of the 109 through both the first "A" model production runs and the second "B" models, which we will talk about soon.

Junkers Jumo 210D engine, rated at 600 horse power.

Through the good judgement of the original Technical Specification it was dictated that any airframe produced for the fighter projects (from Heinkel, Arado and BFW) should each be able to mount a series of different engines, with a common engine mounting arrangement.

So, whilst the fighters were being developed, in tandem Daimler Benz were working on their new 12v in line aspirated engine series, starting with the DB600.

Whilst the ten prototype aircraft were well into the planned testing and evaluation programmes and doing well, the 109 won out against the other designs and were accepted as the winner in 1936.  This moved the airframe from prototype into the first production model receiving the designation of BF109A.

The "A" or Anton model was built in small numbers whilst BFW ramped up jigging and experience with production, however in early 1937 aircraft began to arrive with squadrons, shedding the development aura of the aircraft the "A" models quickly evolved and by Spring 1938 "B" for Bertha models began production.

The "B" series mark the first of our real pre-war era fighters, they saw action over Spain, replacing the ever ageing Heinkel He 51 biplanes in service with the German Luftwaffe under it's auspices as the "Condor Legion".

The BF109B was powered by either a Junkers Jumo 210D or E engine, and was armed with three 7.92mm MG 17 machine guns.  Not as potent as later models, however they were far in advance of the rag tag band of fighters the Spanish Republican forces could muster, and they did out class the Soviet supplied I-16 fighters in everything save turn rate.

Experience in Spain also acted as a catalyst for the development of the 109, and the pilots using it, moulding the tactics which the Jagdflieger would employ to dominate the skies of Europe in just two short years.

BF109B2 in 1938.

Whilst the "B" models were flying over Spain, at home in Germany from November 1937 a new "C", for "Clara", series was coming to fruition, one example of the "C" series was taken stripped and specially fitted with an aerodynamic skin, further fitted with a special Daimler Benz engine sporting 1,650 Horse Power, the aircraft was re-designated the BF109R ("R" for record breaking) and immediately set a new air speed record of 379 miles per hour.

Later re-designated the Me209, to distinguish it from separate work of "Bayerische Flugzeugwerk" (BF) and work of Willy Messerschmitt at his independent factory.

Three more "Record" setters were built, these 109's are the only aircraft of the type it is correct to refer to as ME109's, all other 109's are "BF109" for "Bayerische Flugzeugwerk".

The "C" series which spawned this special edition, was the first to do away with the until then distinctive mouth scoop air intake, changing to a slit under the cowling, such mouth scoops could be found on other fighters, such as the P40, Typhoon, MS406 and even the Stuka.  However, they are nearly always more about the engine than the airframe itself.

The biggest problems between the "V", "A", "B" and now "C" series to date had been the lack of decent armament, some models only carried two or three 7.92mm machine guns, which drum feeds which were liable to jamming during high-G aerobatic actions.

In parallel however several new airborne machine guns and cannon were being developed, ranging in calibre and using ammunition from the German Rifle Standard 7.92mm, to 20mm up to 30mm diameter.

As these new weapons came into use, so the 109 changed to trial and even in corporate them for use.

As the factory matured, so a push began, to prepare the design for better, more efficient, manufacture.  The first model to benefit from this effort was the "D" for "Dora" series, which took steps to unify the armament as two guns mounted above the engine in the cowling and two guns mounted one per wing.

However, the first step towards unifying production of the "D" series, was made when it received the then new Daimler Benz DB600A engine.  Improvements were also made to the radio, air filter, oil/cooler interchange and radiator, this allowed the aircraft to leap into the air as never before.

BF109B1 - Note the three aerial wires.

BF109C2 - Still showing the mouth like air intake.

BF109E3 - Showing the smoother new air intake of later engine & cowlings.

EARLY WAR
With it's partnering with the DB600 providing more power than ever before, and importantly being direct fuel injected; rather than using gravity fed carburettors; the "D" series see's the 109 find it's feet, solving problems other types (notably the Spitfire) would not come to grips with for another two years. 

These improvements really transition us from an aircraft of the pre-war era to the early-war experiences, indeed "D" models were in the front line squadrons as Germany retook the Rheinland, annexed Austria and invaded Czechoslovakia's Sudaten land.

"D" series aircraft were also hand as German forces crossed into Poland in 1939, however by that time the "D" series were being recalled and the new "E" (for "Emil") series were appearing, and the "E" series lead the Jagdflieger all the way to the Western border of mainland Europe in 1940.

The "E" series differed only slightly from the "D", in that they flew with the ever improved engines from Daimler Benz, the DB601 providing around 1000 horse power.

The E1 also had the first of a new model machine gun, the 7.92mm MG/FF machine gun replacing the MG17's, again still two were synchronised firing through the arc of the prop from positions on top of the engine cowling and one in each wing firing.

The E1 also provided the 109 with the first production version able to carry out bombing, with the BF109E1-B able to carry a 250kg bomb under the central fuselage between the undercarriage.

This same fitting for bombing was also modified to carry a drop tank in the E-7 version.

Almost as soon as the E1 variant was coming into production, kits were issued to squadrons in order to upgrade the wing mounted machine guns from 7.92mm MG/FF to 20mm MG/FF cannon.  This kit required ground crew to remove the wing mounted guns, cut a larger hole in the underside of the wing panel and fit the new gun.  A bulbous oval plate being supplied as part of the kit to cover the new gun and give the wing a smoother aerodynamic foil shape again.  This became the first cannon armed 109, and proved a very popular gun arrangement for the next year or so.

Many of these upgrade kits were kept around, indeed there are stories of Adolf Galland having a 20mm MG/FF cannon kit retro fitted to his later BF109F models in 1941, as he preferred that armament.

It is with this armament of two MG/FF and two Cannon which gives us what is perhaps the definitive version from the "E" series, the factory cannon armed BF109-E4.  The E4 improved on the E3 cannons, and almost all E3's were converted to E4's with yet another field conversion kit being issued rather than recalling all the airframes.

After the Polish campaign the remaining "C" and "D" series units were fully re-equipped with the "E".  And the E3 and E4 were the primary fighter type during the phoney war and the later Battle of France from 1939 to early 1940.

A restored French Morane-Saulnier MS.406

The Armée de l'Air primarily flew native Morane-Saulnier MS406's, imported P36's under the name 'Hawk 75' and native Bloch MB.150 aircraft, and represented the first modern Western Airforce the 109 faced off with, however the French were swiftly overrun by the Jagdflieger.  With only their Dewoitine D.250 of comparable performance to the 109.

The 109 also first met British fighters during the Battle of France, in the form of Hawker Hurricane Mk I's and Gloster Gladiator biplanes, which equipped the British Expeditionary Force squadrons.  The latter suffered to the 109's, however the Hurricane was found to be able to out turn the 109, and held it's own on the defensive, whilst not quite being on even terms to face the 109 head-to-head.

It was direct fuel injection which gave the 109 its deadly lead, as it could pull negative G, whilst with gravity fed carburettor's the Rolls Royce Merlins in the Hurricane, and later Spitfire, could not.  109 pilots soon learned to dive away from attacking British planes, and not to enter turn fights with the British.  Anecdotally there are tales of British pilots even reporting the exhaust spurt of black smoke of an accelerating 109, with its dive towards the ground, as a downed aircraft.  Adding to the chaos of battle with vast over claiming by RAF pilots.

However, by early summer the Germans had free reign over the French coast and 109's were stretching their legs over the channel.  The Battle of Britain was about to begin.

The "E" series carried the Luftwaffe into the Battle of Britain, and the series ran to the largest production-run quantity to that date, with just over 1,250 airframes completed.

During the Battle of Britain, with the extended operational ranges required over the English Channel, some say the 109 design showed it's first flaw, as the range was insufficient to operate over England for more than 30 minutes, and no standard 109 could ever fly from Norway to attack Scotland.

Over southern England with their 30 minutes from bases on the French mainland 109's never flew further in-land than London, and even then only stayed for 10 minutes, all excluding any fuel time expended on combat, which drastically reduced range.  Needless to say many 109 pilots learned how to glide the type back over the channel, belly landings in French fields, as well as ditching were not uncommon hazards to  be dealt with.

This lack of endurance for the type proved problematic for all models, however the high powered (1,200 horse power DB601N engine) fitted into the BF109E-7's did carry the aforementioned external fuel tank, allowing the aircraft to fly further, but these were kept almost exclusively for  photo reconnaissance (as a side note the E7's also flew from Norway, but I have not yet found any information about their appearing over Scotland).

The fuel problem however, really was not a fault of the design, but rather the  design meeting the German High Command issued specification, and newer operating requirements asking too much of their thoroughbred fighter. One must remember the original requirement was issued in 1935, the "Rustungsflugzeug III" stated "short range interceptor" as one of the primary requirements, by 1940 range had drastically lengthened with the English Channel bordering the west of the newly extended Reich frontier.

With the development of the Blitzkreig tactics of the late 1930's the 109's position in the pantheon of military operations was therefore to provide close air support and cover for advancing ground forces, being anywhere between 2 and 10 miles behind the front lines, its range was perfectly suited to the action it was to take-part in.  The design was never intended to fight a war against a distant foreign nation like Britain separated by a minimum of 26 miles before combat was even engaged, the 109 was meant to be used up close and personal, as an in your face statement of intent, not as the long arm of air superiority over a foreign nation.

I therefore can not pick fault with the 109's range, especially when we think about the two main opponent aircraft, the Spitfire and Hurricane, both using the same Rolls Royce Merlin, which; as we've already mentioned; used gravity fed carburettor's.  And had around an hours flying time from full fuel load.  Unfortunately the British were defending, so could land for fuel easily.  But crucially the British had Radio Direction Finding (early Radar), so could control and vector their aircraft to optimally intercept the encroaching German aircraft.

BF109G2 - Later in development than the E7, 
clearly showing external fuel tanks of the same style.

Back to the development of the 109 however, and we find the late 'Emil' series, BF109E-7, also introduced a change to the armament plan-form, one which influenced the next generation of 109's... For speed and altitude in the photo-reconnaissance role, weight reduction became a prime motivation, therefore the E7 lost one of its wing mounted 20mm cannon, balancing the airframe by moving the remaining 20mm into the nose, firing through the propeller hub.

This new arrangement of two machine guns and a cannon in the nose became the armament standard for the next series of 109 now on the drawing board.  It also marks our departure from the early war into the mid-war period.


MIDWAR
We'll start considering the mid-war era with the changes to the armament on the 109.  This concentration of all the fire power in the nose aided aiming, but it received mixed feedback from pilots, some preferred the new layout, others disliked it intensely, indeed we've already mentioned Adolf Galland ordering an older 20mm wing conversion kit be fitted to his BF109F aircraft, that aircraft was an F2 model, and he flew it in France until 1942 where upon he was moved to the Jagdflieger High Command and history loses track of the aircraft.

Concentrating fire power in the nose simplified the wings, and allowed two separate design teams to work on evolving the aircraft simultaneously.  One team worked on the wings, redesigning them for better effect, whilst a second team worked on the engine cowling, cockpit and fuselage.

The "F" series came out of design and into production sporting an obvious change to the wings, gone were the cut off wing ends of the original design and in came a new rounded wing tip.  


BF109E1 - Schematic, clearly showing the squared off wing tips.

BF109F1 - Schematic showing the new rounded wingtips.

The wings were not the only change, the whole airframe went though a full perturbation of incremental design with regards aerodynamic resistance, which spawned straight from the advanced wind tunnel programmes the Germans were running.

Some sources state the "F" series as being designed in response to the Spitfive V appearing and out classing the "E4".  However, German sources show the "F" series was already being developed, and so it's aerodynamic changes coincided well with the need to counter the now fast evolving Spitfire.

As well as the external refinements, internally the cockpit layout the "F" series was simplified and improved, and once in squadron service some started to call the "F" series the best, and later the peak, of 109 design evolution.  It had evolved into a powerful agile fighter and was as yet unfettered with the pressure of defending (interceptor role) the Reich, indeed, the "F" designed remained the basic airframe until the end of the war in Europe and stayed in service with the Spanish until the 1960's.


BF109E - under going engine & gun maintenance.

The German fighter force which swept across the Soviet border in the Summer of 1941, was predominantly made up of "F" series 109's, and they quickly swept the Soviet air force from the skies.  One must remember the Soviet air force was much under manned, with equipment still of 1930's vintage, and with little or no early warning systems.  And a high command paralysed in disbelief at the German aggression.

That said, these new 109 designs did also enter squadron service on the Atlantic wall pitting themselves against the Spitfire V until the Fw190 started to equip the Western Wall.  So the early "F" model should never be dismissed, especially not as some sources quote "the 109 used to shoot Russian fish in a barrel".

The first "F" model, the F1 was equipped with the same 20mm MG/FF cannon firing through the propeller hub.  Almost as soon as the production started the cannon was swapped to a 15mm MG151 gun in the F2 model, though a smaller round this 15mm shell had a higher muzzle velocity and improved ammunition technology vastly improved the convergence of both the machine gun and cannon fire from the nose, making the plane deadlier than ever.

BF109F2 - Presumably somewhere in Russia 1942, the Pilot is one Peter Gerth.

In the East, against such aircraft as the Polikarpov I-15, I-16 the fire power of the 15mm cannon proved more than sufficient, even when pitted against Lagg or Mig fighters the 109's still held the upper hand using radio and years of combined experience, where the Soviets still for the most used hand signals and flew straight and level to and from patrols, totally undermining the more potent fighters they could muster.

Soviet I-16 fighters in a 5 man Vic Formation, outdated machines,
using outdated tactics, they were cleared from the sky
despite dogged determined bravery by their pilots.

The F2 only changed some six months after the Eastern war had began, in late 1941, as more modern metal skinned Soviet aircraft did began to appear and Soviet pilots improved, a new "F4" model of 109 appeared sporting an up gunned 20mm MG 151 in the nose.

The other innovations seen at this time was the addition of field modification kits to add under wing 20mm MG FF/M cannon under each wing.  These gun pods proved to be a feature on many models of 109 right up until the end of the war, aiding the aircraft to stay competitive as a high-altitude interceptor against the Allied Daylight Bombing Campaign against the Reich.  We'll discuss the gun pods as they evolve with the airframe.

Over all the "F" series saw the most diverse service with Luftwaffe squadrons, ranging the skies at the height of the German continental domination, across the deserts in North Africa, north into Scandinavia and out into the vast unconquerable East.

However, even with these successes the "F" series was by 1942 already under scrutiny and in the pipe line was the "G" for "Gustav" series.

Replacing the most diversely employed series the "G" became the most numerous of all the production runs, however the G was always heavier than the F, and therefore many pilots found they lost manoeuvrability and some critics say the 109 turned away from being a pure fighter into more an interceptor, gaining altitude and diving on an enemy was always the preferred method of attack, even the British had the saying "Beware The Hun in the Sun".

However, with the G series little other options were presented to the pilot, especially against their new primary target the western Allied Bombing Campaign.

The initial G1 was an improvement over the "F" series by carrying a pressurised cockpit and a supercharged engine the "Gustav" was to become the high altitude high performance variant of the 109, and did become the scourge of Allied Bombers above 10,000 feet.

The G1 carried the improved 20mm cannon and dual 7.92mm machine guns in the same arrangement as the F4, however, it also nearly always carried under wing gun pods or bombs.

The G2 had the same armament and engine, but without the complex pressurization system it was destined to fight between 10 and 10,000 feet.  G1's were stationed primarily in Germany, France and the Low Countries on the bomber interception role.  Whilst G2's almost exclusively went East to the Russian Front, or with tropical filters north to Scandinavia or South into Italy, Africa and the Balkans (tropical filters also helped filter snow from the air, as well as the dust of the Urals and Deserts).

The under wing gun pods optionally added 20mm, but later 30mm kits were supplied to units stationed in the defence of the Reich.  Less often were 30mm gun pods put into front line use against other fighters as the additional weight and drag of these large guns further hampered the manoeuvrability of the Gustav.

The "G" also saw the use of the Daimler Benz DB605A engine, a progressive upgrade spanning all the way back to the DB600A.

There were many more marks of "G" models, from G1 and G2 in 1943, to the G3 & G4's in 1944 - which differed in their radio installation and the use of armour plate around the pilots seat, as well as the G3 changing the default armament to a single 30mm Mk108 cannon firing through the prop, two 20mm MG 131 cannon in the upper engine cowing, firing synchronised through the arc of the prop, and then two 20mm MG151 mounted one per wing.  This much heavier default armament marked the start of an escalation in the fire power of the G series.

Later in 1944, G5 and G6 carried even higher calibre cannon armaments.  But these were the first editions of the 109 to carry the new to service 13mm MG131 Heavy Machine guns, finally doing away with the 7.92mm of old.

Many G6's never left the factories before they had an airtight cabin fitted, and were re-designated the G16.  Simpler than the pressurization system used in the G1, this airtight system consisted of a simple seal allowing the pilot to climb to altitude and still fight whilst breathing pure oxygen, a significantly simpler production processes, than the complex system in the G1.

However, breathing pure oxygen was a hazard in combat, especially with burning phosphorous tracer rounds.  Though there are anecdotal tales the pressure differential between the airtight cabin and outside atmosphere sometimes aiding escape, by sucking the pilot from his seat when he needed to bail out, though at very high altitude it was not unheard of for pilots in their chutes to pass out through lack of oxygen in the thin air.

Erla Haube canopy

In 1943 however, there had also been serious redesign carried out on the canopy, going from the steel frame and often hard to see out of early war variant to a redesigned version.  This redesign was carried out by a subcontractor, the Erla Haube company.  It was work pushed through by Adolf Galland after his movement to Jagdflieger High Command, and so the new canopy is often mistakenly referred to as the "Galland Hood".

As well as the canopy, the "G" also saw the second redesign of the cockpit layout, including new sights, new seat, additional pilot armour protection and various other facets were honed and reformed.

The biggest external hint that the "G" was completely new cowling hood, many sporting bulges to contain the larger cannon installations.  These did hamper the already poor forward view from the aircraft whilst taxiing, and were subject to complaint from pilots when aiming their shots.

BF109G - This aircraft was in Dutch service in 1946.
However, it clearly shows the large bulges in the cowling cover
around the canon mounts & supercharger.


LATE WAR
Midway through the G series, after the G2, we really see the airframe progress from the mid-war to late-war generations.  As the fighters of the Reich are pushed further into the interception role.  They begin to evolve less for aerodynamic prowess and more for raw power in the climb & speed.

This loss of movement in the fighter role really saw a seed change in 109 design which continued on into the early jet age, where speed became king.

However, two more whole models of 109 were produced before war's end, first was the "H" series, which was not based on an evolution of the "G" but instead took "F" models and up rated them with the new DB601E engine which had a new high altitude supercharger and in some sub-models water injection systems.

The "H" series however was short lived in the effort for both production and upgrading, because many of the airframes were older or war weary, even when reconditioned with German engineering's high standards, there were problems with fixing the engine to the airframe sufficiently well and vibration dogged the "H" series aircraft until their retirement at wars end.

BF109H - Showing it's sleek lines in 1945.

There were only two "H" marks toyed with, converted "F" models were the generally the H0, whilst manufactured "H" series were H1 variants. The H0 being primarily for development and pre-production testing, of the envisaged H1.

By September 1944 Germany was almost completely on the back foot, defending on all sides as Italy fractured and surrendered to the allies in South, the British, Canadian and American forces moved Eastwards from the Atlantic liberating France, lending the Free-French weight to their numbers.  And the vast horde of now well organised Soviet forces poured westwards avenging the German savagery on the ground.

As such anti-bombing operations became the prime focus for the last production model 109, with the need to reach up above 41,000 feet the new "K" or "Kurfurst" series was developed.

It provided improved propeller technology to better bite into the thin air at high altitude, a new version of the DB605 engine was also developed, some quote this as the ASCM version, others simply the DB605F (I'm yet to clearly define the engine), but it was planned to develop 2000 horse power under war emergency power.

Two initial marks were made available to the Luftwaffe, the K2 and the K4, which differed with the latter having the same pressurised cockpit system as the G1.  Some K model aircraft were sent to Japan to assist their development of both high-altitude interceptors, but also instruct Japanese designers on the leaps made in pilot protection (something drastically lacking in native Japanese designs until too late in the Pacific war).

The initial K series planes also had a heavier armament, they did away with the machine guns, going with an all cannon armament of two 15mm MG151 Cannon in the upper cowling and one 30mm MG151/FF Cannon firing through the prop.

In the fully pressurised high altitude form the K4 also carried 15mm cannons in gun pods under the wings, but swapped the cowling cannon pair for a pair of 15mm heavy machine guns, which provided a higher rate of fire, aircraft were delivered as such, they were not supplied as kits in the field.

As war stresses carried to press on Germany the K6 was developed from the K4, reducing the demand for cannon armament by dropping the two 15mm cowling cannons back down to 7.92mm Machine Guns or 13mm heavy machine guns, of which there was more stock available.

The K6 began delivery to front line units in January 1945, however, by then the front line was within the borders of Germany itself and so the combat experience of the K6's were essentially poorly trained young pilots, flying from bombarded strips under extreme duress.

Even with their superior performance over previous versions they proved no match for the swarms of Allied fighters and through until the German surrender no notable successes were had with the type.

Bringing to an end the long success of the BF109 in the ruins of Germany.

For a design of 1935 the 109 served extremely well, but at wars end it was tired and 109's were not much considered as war reparations by the victorious allies.  The soviets did capture some late K models and digest their high altitude systems, parts of which are reported to have gone into the early Mig & Yak jets.  However, in the west the 109 was pawed over and for the main scrapped.

Czechoslovakia took the 109 plans and the Czech state aerofactory Avia build the S-199, which to all intents was a late 109 G airframe with a new engine.  These planes were supplied to Spain, Italy and Isreal, and it was with Isreili pilots the 109 in this guise made it's final air-to-air interceptions, with 8 kills of Egyptian and Syrian aircraft.


REVIEW
Historically the short fuel load of the aircraft was one of its biggest problems in the early war years, however one bigger problem dogged the 109 throughout it's life, a problem even I acknowledge as difficult to solve, the narrow undercarriage.  Which proved fragile and over 1,500 (2,000 by other sources) aircraft were lost to undercarriage accidents, either in landing or during take off.

This wasn't to say wide track landing gear was never tried, just it never entered production, indeed the ME209/BF109R units pre-war had wide track undercarriages to make up for the lack of view forward caused by the larger engine.

BF109F1 - testing wide track main landing gear.

Another fatal problem with the aircraft was the torque or wash from the prop, there is discussion between different sources as to what the problem actually was, whether the sheer torque generated by the engine against the light airframe caused it to want to spin anti-clockwise, or whether the slip stream of air down the left side of the fuselage caused a rudder effect.  But the problem was manifest in a strong veering during take-off and a tendency for the aircraft to want to spin anti-clockwise onto its back.

This effect was not unheard of in other planes, however, the 109 receiving its high power plant engine into squadrons used to more manageable types, like the He51, it came as a culture shock to suddenly find an engine so powerful as it wants to kill you.  Many young pilots paid the ultimate price for this tendency of the type.

As the Luftwaffe pilot training programs were cut to try and meet demand so the quality of pilots fell and both take-off & landing accidents accounted for far more pilots than in the early stages of the war.



References:















Wiki Media

Creative Commons License Items also used.



Engine Coolant "In takes"
I've had a personal e-mail from a chap called Mike taking me to task on my comments about the "mouth" like in takes on the early Jumo engine's, his point being I'm in correct, and just judging by the pictures.

However, we've had a nice chat, and found supporting evidence, first of all, I am correct the initial Jumo engines had bath style radiators, with water flowing down and out the engine, cooling in a sump and then being pumped back up in circuit, these large bath style radiators requires large mouth like in takes, which were located (in general) below the engine with a large opening to allow air to move in whilst the aircraft was in flight, but also to be pushed in by the prop wash then the aircraft was on the ground or taxiing slowly.

The later DB600 series engines however did not need a bath radiator, they used a water and gycol mix as their coolant, which it was possible to easily pump in circuit further from the heat of the engine to help with spreading the heat and reducing the amount of equipment needed under one engine cowling.

This change affected both the early 109 and it's sister airframe the 110, both of which in their early incarnations changed from Jumo to Daimler power plants, changing their engine air, coolant and oil coolant in takes.

As much as I hate to use a Wikipedia reference, they have a good publicly available comment on the topic within the development section about the BF110...

The major identifier of the A and B 110s was the very large "mouth" bath radiators located under the engine.
In late 1938, the DB 601 B-1 engines became available. With the new engine, the design teams removed the radiators under the engine nacelles and replaced them with water/glycol radiators for the C-series airframes onwards, placing them under the wing just outboard of each nacelle, otherwise similar in installation, appearance and function to those on the Bf 109E.