2018
← The hidden cost of making videosA Beginner's Guide To The Oric Atmos →
  Job Application
Mon 10th September 2018   
When I moved to Norway in 2005, I kept some of my most precious Oric and Atari hardware, but I left the rest to some of the Oric and Atari people I trusted to put them to good use.

Some of our unreleased demos have since appeared in various compilations after they were found in the old stack of floppies, but now and then they have found some old forgotten treasures.

Yesterday, Brume1 contacted me to tell me he had found something cool: My application letter for my first job at Adeline Software!

Version Francaise

Atari Works 1.1 by Pradip K Fatehpuria
Atari Works 1.1 by Pradip K Fatehpuria
The text was originally in French, edited on an Atari Falcon 030, which unfortunately means it did not had the same standardized values for accentuated and special characters.

I managed to import from the ADELINE.ASC file into Atari Works2 and then export it to RTF format, which correctly fixed most of the characters (except the "ë"!) but unfortunately could not fix the hardcoded column with.

In order to manage the mental health of the reader I fixed the most grivous grammar errors, but I kept the rest as is to not change too much of what it was.

You'll find the (crappy) english translation below.

POINTIER Mickaël
14, chemin des justices
appt 20, cage D
25000 BESANÇON
Tél: xx-xx-xx-xx

OBJET: Demande d'emploi.

   Madame, monsieur, je vous envoie cette lettre suite a une annonce parue il y a quelques mois déja dans la revue JOYSTICK. Vous recherchiez alors des programmeurs compétents en assembleur 680x0 et 80x86. Etant à ce moment étudiant à Besançon pour y passer une licence en informatique, je n'ai pas jugé bon de présenter ma candidature puisque le poste semblait être à pourvoir rapidement, j'ai néanmoins informé de cette offre Mr LHERMITE Olivier, que vous avez finalement embauché. Depuis, je me suis intéressé aux activités d'Adeline Software (méthodes de travail, matériel, projets, etc...) et je me suis même rendu dans vos locaux où j'ai pu assister à une démonstration (impressionnante) d'une préversion de LBA, et discuter avec un de vos «graphiste» (travail sur la Silicon Graphics, animations et retouche des graphiques,...).

   Je ne sais pas à l'heure actuelle si vous penser embaucher du personnel supplémentaire, mais si c'était le cas sachez que je serais extrêmement intéressé par un travail au sein de votre équipe. En effet, je doit normalement poursuivre mes études vers une maîtrise d'informatique, me permettant finalement de devenir un programmeur spécialisé dans les logiciels comptables ou industriels, c'est à dire essentiellement suivre un cahier des charges (ou le concevoir...) et programmer des logiciels complexes mais «rébarbatifs». Hors, je ne m'imagine pas effectuer toute une carrière dans ce domaine, car j'affectionne plus un travail qui nécessite une part de création, d'imagination et de recherche technique. Ainsi, j'ai un faible pour tout ce qui est graphique (démonstrations, jeux, slide-shows, programmes de dessins), sonore (bruitages et musiques d'ambiance), technique (programmation optimisée en assembleur ou tout autre langage qui le permet [Par optimisation, je n'entend pas «gagner 3 microsecondes sur l'affichage d'un sprite», mais plutôt le fait de faire en sorte qu'une routine soit: 1) lisible 2) relativement rapide 3) occupe une place mémoire raisonnable 4) que le résultat final soit à la hauteur de la machine de base sur laquelle est censé tourner le programme !]), ou encore utile (petits utilitaires de conversion de formats de fichier binaires/ascii [moulinette fichier DOS vers UNIX,], éditeurs divers (de polices de caractères, de cartes [jeux d'arcade], de trajectoires [sprites]).

   Je programme en autodidacte depuis longtemps (10 ans environs), et je possède un très bon niveau en 68000-68030, quand au 80x86 j'ai un niveau correct bien que je ne maîtrise pas encore toutes les subtilités de la programmation sur 80386 (mode protégé et nouveaux modes d'adressage). J'ai aussi une connaissance correcte bien que lointaine des processeurs 8 bits (particulièrement le 6502, et un peu de Z80, (et très peu de 6809)), et des notions de fonctionnement des processeurs de type RISC ou DSP (fonctionnement en parallèle, subdivision des tâches, etc...). Je maîtrise tous les langages BASIC (du vieux basic à numéros de lignes, jusqu'au basic de type PASCAL (jamais programmé en Visual Basic...)). Je ne pratique le C que depuis 1 an 1/2 et uniquement dans le cadre de mes études, mais je parvient à obtenir des résultats honorables (au détriment parfois de la lisibilité). J'ai l'habitude de commenter correctement (en tête de blocs surtout+les passages délicats à droite), et d'utiliser des noms de variables/labels très significatifs (plutôt longs). Enfin, je n'ai pas de difficultés particulières pour programmer simultanément dans différents langages (ex: programmer une routine de compactage en 68030 sur mon Falcon, et décompacter le résultat en 80386 sur un PC), ou pour me mettre sur une nouvelle machine avec un nouveau langage (sauf si les outils de développement sont totalement archaïques et/ou buggés).

   A titre d'exemple vous trouverez sur la disquette deux répertoires contenant des programmes effectués dans le cadre de la licence d'informatique. Bien que les sources indiquent plusieurs noms, ces deux programmes ont été fait en solitaire (un arrangement entre «collègues» dans les différentes matières...) Le premier est un projet en assembleur PC (le sujet était libre). Il consiste en un «planétarium» simplifié permettant d'obtenir divers informations sur le système solaires terrestre. Le code est à 100% en assembleur 80386, et aucune partie du code n'a été récupérée (sauf la routine qui fait «BIP») et la plus grosse partie de cette «démo» a été faite en 3 semaines de cours. Le second projet est en C, et comptait pour l'UV d'informatique graphique. Le sujet en était aussi libre, il consiste en l'affichage en 3D d'une scène composée de divers polygones affichés soit d'une couleur unie, soit avec un ombrage de Gouraud, soit avec un mappage de texture. La projection écran est faite par l'utilisation d'un Z-Buffer qui évite tous les problèmes de clipping. Pour des raisons de temps (dernière semaine avant les examens), les calculs ont étés simplifiée (par de calcul de la normal dans le Gouraud) et précalculés. L'édition de la scène a été faite à la main (génération d'un source C à partir d'une moulinette écrite en Q-Basic), et les routines de rotation 3D simplifiées au maximum. De même, l'affichage des pixels est loin d'être optimisé (plusieurs indirections, pointages inutiles...). Par contre, la routine autorise l'affichage de textures ombrées (éventuellement avec texture+gouraud). Ce programme a été converti en Basic GFA sur Falcon en moins de 2 heures, et ne faisant appel qu'a des calculs sur des entiers longs (sauf la 3D...) il est facile de le convertir en assembleur (Intel, Motorola ou autre). Je tient à votre disposition toutes mes réalisations sur Atari ST et Falcon, si cela peut vous intéresser.

   Ayant 'travaillé' pendant plusieurs années avec Olivier dans le groupe de démo 'NeXT', je possède en gros le même type de références que lui puisque nous avons réalisés ensemble les démos «The Official Charts Compilation» et «The Phaleon Demo» ainsi que le (jamais terminé) jeu «Euphoria» sur Atari ST. Je ne sais pas si ma formation professionnelle peut vous intéresser (BTS Informatique+Licence informatique=COBOL+PASCAL+C) car elle ne doit pas être d'un grande utilité dans le type de travail que vous effectuez. Néanmoins, elle m'a permis d'acquérir de bonnes connaissances (pratiques) au niveau de la maintenance système sur PC, ainsi que dans la programmation sous interface graphique GEM et WINDOWS. Si d'aventure vous aviez des doutes quand à ma disponibilité sachez que si j'ai le choix entre travailler dans une entreprise du type d'Adeline Software, ou bien faire ma maîtrise d'informatique, je n'hésiterais pas un instant. Le peu que j'ai pu voir de vos réalisation, m'a suffisamment intéressé pour ne pas vouloir louper une occasion de travailler dans le milieu de «l'informatique ludique».

   Dans l'attente de vos nouvelles, veuillez agréer mes salutations sincères.

English Version

And here is the crappy english translation:

POINTIER Mickaël
14, Chemin des Justices
appt 20, cage D
25000 BESANÇON
Tel: xx-xx-xx-xx

Subject: Job Application.

   Madam, sir, I send you this letter following an announce published a few month ago in JOYSTICK magazine. You were looking for skilled 680x0 and 80x86 assembler programmers. Being at the time studying for a degree in computer science in Besançon, I did not apply because you needed somebody ASAP. I nevertheless informed Mr LHERMITE Olivier of this offer, who you eventually hired. Since then, I have followed the activities of Adeline Software (working methods, equipment, projects, etc ...) and I even visited your premises where I was able to attend an (impressive) demonstration of a preview of LBA, and chat with one of your "graphic artist" (work on Silicon Graphics, animations and retouching of graphics, ...).

   I do not know if you are planning on hiring additional staff at the moment, but if that was the case know that I would be extremely interested in working on your team. I would normally continue my studies towards a master's degree in computer science, and then probably become a programmer specialized in accounting or industrial software, ie essentially follow a specification (or design it ...) and program complex but "boring" software. I can't imagine myself doing this type of work all my life because I love to do things that requires a blend of creativity, imagination and technical research. I have a weakness for everything that is graphic (demonstrations, games, slide shows, drawing programs), sound (sound effects and ambient music), technical (optimized programming assembly or any other language that allows it [By optimization, I do not mean "to gain 3 microseconds on the display of a sprite ", but rather to make sure that a routine is: 1) readable 2) relatively fast 3) occupies a reasonable memory space 4) that the final result matches the specs of machine base on which the programm is supposed to run on!]), or still useful (small utilities for conversion of binary / ascii file formats [DOS file to UNIX,], various editors (fonts, levels [arcade games], trajectories [sprites]).

   I'm a self-taught programmer (been doing it for about 10 years), and I have a very good level in 68000-68030, while I do have a decent knowledge of the 80x86 although I do not yet master all the subtleties of programming on 80386 (protected mode and new addressing modes). I also have a good knowledge although distant 8-bit processors (especially the 6502, and a little Z80, (and very little 6809)), and notions of operation of RISC or DSP type processors (parallel operation, subdivision of tasks, etc ...). I master all BASIC languages ​​(from old basic with line numbers, to BASICs that are close to PASCAL (never programmed in Visual Basic ...)). I've practiced C only for 1 and a half year and only as part of my studies, but I manage to achieve honorable results (sometimes at the expense of readability). I usually comment correctly (especially block headers + the delicate passages on the right), and use understandable names (rather longs) for variables and labels. Finally, I do not have any particular difficulties to program simultaneously in different languages ​​(ex: program a compacting routine in 68030 on my Falcon, and uncompress the result in 80386 on a PC), or to discover a new machine with a new language (unless the development tools are totally archaic and / or buggy).

   As an example, you will find on the floppy disk two directories containing programs made as part of my computer degree studies. Although the sources indicate several names, these two programs were done alone (an arrangement between "colleagues" in the different subjects ...) The first is a project in x86 assembler (the subject was free). It consists of a simplified "planetarium" simulatio that shows various information about the solar system. The code is 100% assembler 80386, and no part of the code was sourced from outside (except the routine that plays the "BEEP" sound) and the bulk of this "demo" was made during a 3 weeks course. The second project is in C, and counted for the computer graphics course. The subject was also free, it consists of the 3D display of a scene composed of various polygons displayed either in solid color, with Gouraud shading, or with a texture mapping. Screen projection is done by using a Z-Buffer that avoids all clipping problems. For reasons of time (last week before the exams), the calculations were simplified (by calculation of the normal in the Gouraud) and precalculated. The editing of the scene was done by hand (generating a C source from a converter written in Q-Basic), and the 3D rotation routines simplified to the maximum. Similarly, the display of pixels is far from optimized (several indirections, unnecessary pointing ...). On the other hand, the routine allows the display of shaded textures (including texture + gouraud). This program has been converted to Basic GFA on Falcon in less than 2 hours, and only using calculations on long integers (except 3D ...) it is easy to convert it to assembler (Intel, Motorola or other). I can make available all my software productions on Atari ST and Falcon, if you are interested.

   Having 'worked' for several years with Olivier in the demo group 'NeXT', I have roughly the same type of portfolio as him since we made together the demos "The Official Charts Compilation" and "The Phaleon Demo" as well as the (never finished) game "Euphoria" on Atari ST. I do not know if my professional training may interest you ("BTS" + "License" = COBOL + PASCAL + C) because it should not be very useful in the type of work you do. Nevertheless, it allowed me to acquire good (practical) knowledge in PC system maintenance, as well as in GEM and WINDOWS GUI programming. If by chance you had concerns about my availability know that if I have the choice between working in a company like Adeline Software, or do my master's degree, I would not hesitate a moment: The little that I could see of your achievements, interested me enough not to want to miss an opportunity to work in the field of "computer games".

   Looking forward to hearing from you, please accept my sincere greetings.


Conclusion

That was definitely another time.

A time when passion and skills was more valued than actual diplomas, and when assembly programming was still a thing :)

Ultimately I was hired, and I remember that Fredérick Raynal3 said something along these lines:

"I don't really care about demos, but I can see how much work that represent, and if you are able to work for two years in the evenings to release a giga-demo on four floppy disks, that means you are able to finish things and release them, which is the thing we really care about in video games."





1. Manager of Atari Legend
2. One of the very underrated software in the Atari ecosystem
3. (co)Creator of PopCorn, Alone in the Dark, Little Big Adventure, Toy Commander, 2Dark, ...
comments powered by Disqus