Hallo!
Ich bin Embedded SW-Entwickler und habe beruflich mit Projekten zu tun,
in denen es um Bluetooth Audiostreaming geht. Da aptX eine Anforderung
ist, beschränkt sich die Auswahl auf Produkte von CSR bzw. Qualcomm,
welche CSR gekauft haben.
Die Entwicklungsumgebung hierfür ist mächtig altbacken. Alles basiert
auf einer vor 15 Jahren gebauten GCC toolchain für CSR's XAP-Controller.
Kein C++. Nicht einmal C99.
Wenn ich allerdings zu Hause an eigenen Projekten arbeite, dann nehme
ich einen ARM-Cortex und ARM's pre-built Gnu Toolchain und bekomme damit
eine kostenlose Umgebung die sogar C++17 kann.
Nun frustriert es mich, dass ich im Job solche altbacken Tools verwenden
muss.
Zum einen verstehe ich, dass die Firma mit den Produkten Geld macht und
es für die gegebenen Anforderung keine (bekannte) Alternative gibt.
Zum anderen möchte ich aber nicht 'verdummen' was moderne Umgebungen
angeht. D.h. wenn ich doch mal den Job wechseln muss, befürchte ich im
Nachteil zu sein, wenn ich zuvor jahrelang mit altmodischen Umgebungen
gearbeitet habe.
Wie seht ihr das?
Ist es euch im Job wichtig, dass ihr eine moderne Umgebung benutzt?
Fragt ihr danach schon im Bewerbungsgespräch?
Oder ist es euch egal? Immerhin kann man ja auch mit alten Tools tolle
SW erschaffen.
Bin mal gepspannt!
Andi
Entwickler lieben es, bestehende Software wegzuschmeißen und alles neu
zu machen - mit den gerade angesagten Tools.
Leider haben die Kunden nichts davon und bezahlen sowas nicht. Das ist
ein Problem, weil ein Teil dieses Geldes auf Deinem Konto landen soll -
jedenfalls ist das ein üblicher Hintergedanke bei einem Job. Willkommen
im Leben.
Abgesehen davon ist die wesentlichste Neuerung bei C99 doch die
Einführung portabler Datentypen, und in jeder embedded-Codebasis vor C99
waren die mit eigenen Typedefes auch schon realisiert. Dann hast Du
statt uint8_t eben UINT8 hinzuschreiben.
Arrays variabler Länge sind sowieso Teufelszeug, weil es die
Stackanalyse erschwert (sowas macht Ihr doch, oder?), und daß man
Schleifenvariablen nicht in der for-Schleife deklarieren kann, läßt sich
verschmerzen. 64bit-Arithmetik ist embedded auch eher selten.
Andreas schrieb:> Zum anderen möchte ich aber nicht 'verdummen' was moderne Umgebungen> angeht. D.h. wenn ich doch mal den Job wechseln muss, befürchte ich im> Nachteil zu sein, wenn ich zuvor jahrelang mit altmodischen Umgebungen> gearbeitet habe.
Das ist irrelevant, deine Methodenkompetenz und Soft Skills leider
darunter überhaupt nicht. Ob du bereits Toolchain xy verwendest hast,
interessiert keine Sau.
> Wie seht ihr das?> Ist es euch im Job wichtig, dass ihr eine moderne Umgebung benutzt?
Ich verwende die Umgebung, die mir vorgegeben wird. Das (Berufs-)leben
ist doch (meistens) kein Wunschkonzert. Ich verstehe dein Problem nicht.
Zur Kompensation gibt es übrigens gutes Geld, ein für beide Seiten
faires Tauschgeschäft.
> Fragt ihr danach schon im Bewerbungsgespräch?
Nein.
> Oder ist es euch egal? Immerhin kann man ja auch mit alten Tools tolle> SW erschaffen.
Es ist mehr oder weniger egal, da man auch mit alten Tools tolle SW
erschaffen kann.
Ich muss in meiner Firma ausschließlich 8051 Derivate verwenden. Auch
wenn die langsamer, und teurer etc. sind - nein, es ist zu riskant auf
etwas HALBWEGS aktuelles umzusteigen.
hallo,
kann mich meinen vorrednern nur anschliessen. es kommt gar nicht so
selten vor, dass man mit veralteten systemen klar kommen muss.
insbesondere zeichnet das produkte aus, die über sehr lange zeit geld
einspielen.
aber ist deine sorge auch nicht ganz unberechtigt. mit den neuen tools
kommen neue methoden und arbeitsweisen. hier ist es gut am nerv der zeit
zu bleiben. denn möchte man sich ja auch in den neuen methoden üben.
ich find daher deine vorgehensweise gar nicht so schlecht... wenn im job
zu wenig modernes zeug verlangt wird, sich privat mit hobbyprojekten
fortbilden. somit verliert man nicht komplett den anschluss.
Andreas schrieb:> Ist es euch im Job wichtig, dass ihr eine moderne Umgebung benutzt?
ich persoenlich achte bei der jobsuche auf die verwendeten tools...
frage beim bewerbungsgespraech auch gerne nach, wenn nicht schon vorher
angegeben. allerdings gehts mir nicht nur um die tools sondern ob der
job insgesamt der richtige fuer mich ist. und ja... die tools spielen
dabei zwar eine wichtige rolle, aber kann es noch viele andere faktoren
geben, die eine stelle interessant machen.
lg
Andreas schrieb:> Zum einen verstehe ich, dass die Firma mit den Produkten Geld macht und> es für die gegebenen Anforderung keine (bekannte) Alternative gibt
Noch!
Also eins ist klar, wenn die Firma auf prähistorische Tools setzt, sind
dort Amateure am Werk, die anscheinend nicht viel begriffen haben.
Wenigstens müsste man sich Gedanken um die Zukunft machen und da
investieren.
Um langfristig vorne dabei zu sein, muss die Firma einen Schritt voraus
sein. Wenn es eine Klitsche ist, wie in deinem Fall, die keine Ahnung
hat von Strategie, ist sie schneller weg vom Fenster, als hier manche
glauben, die Kunden sind dann plötzlich weg.
Dass man dann x Berufsjahre mit veralteten Tools gearbeitet hat, hilft
wohl 0 bei einer Neuorientierung.
Die meisten Firmen sind doch sehr beschränkt und fragen, wieviel Jahre
Erfahrung haben Sie mit Tool XY?
Sie dir an, wie die Klitsche sonst aufgebaut ist. Wie denken die Chefs?
Weltfremd? Wird aus Fehlern gelernt? Versucht man auch mal was neues?
Oder verlässt man sich eher auf Kunden, dass sich nie was ändern wird..?
So hört es sich an.
Empfehlung, ohne alle Details zu kennen:
Mal nach neuen Jobmöglichkeiten schauen, alternativ in Hobbyprojekten
mitwirken.
Man kann nicht einfach beim Kunden die ganzen alten Anlagen
verschrotten, nur damit der Softwerker nicht "einrostet", was hippe
"Toolchains" angeht. Der Kunde hat viel Geld für die Anlagen auf den
Tisch gelegt, und das wird (kostenpflichtig) supportet.
Das ist mal ein Grund.
Ein anderer kann eine teuer erarbeitete Codebasis sein. Oder
zertifizierter Code. Oder bewährte Hardware.
Der Kunde sieht die alten Controller ja nicht, sondern nur sein Gerät.
niemand wirft funktionierende Hardware und Software weg, nur weil sie
nicht mehr Hipp ist.
Ob bei einer 1000€-teuren Platin der controller jetzt 1,2 oder 7,5€
kostet, ist total egal.
Teils kann das noch ganz andere Gründe haben. So sind einige alte
Compiler und Prozessoren nach bestimmten Normen zertifiziert.
Zum Beispiel für Sicherheitstechnik.
Um es knallhart zu sagen:
DU willst Geld vom Arbeitgeber dafür, dass du seine Probleme löst. SEINE
Probleme, nicht deine Weiterbildungs-Toolchain-Hippster-Fantastereien.
Arbeit ist kein Ponyhof.
Wenn dir das nicht passt, wechsle die Firma.
Andreas schrieb:> Nun frustriert es mich, dass ich im Job solche altbacken Tools verwenden> muss.
Jeden Tag ein neuer Thread mit der gleichen Leier.
Andreas schrieb:> Wenn ich allerdings zu Hause an eigenen Projekten arbeite, dann nehme> ich einen ARM-Cortex und ARM's pre-built Gnu Toolchain und bekomme damit> eine kostenlose Umgebung die sogar C++17 kann.
Ist doch prima, have fun
Andreas schrieb:> Zum anderen möchte ich aber nicht 'verdummen' was moderne Umgebungen> angeht. D.h. wenn ich doch mal den Job wechseln muss, befürchte ich im> Nachteil zu sein, wenn ich zuvor jahrelang mit altmodischen Umgebungen> gearbeitet habe.
Dann wechsle JETZT! Unsere Firma (kein embedded) hat massive Probleme
Softwareentwickler zu bekommen. Wenn nicht jetzt wann dann.
klausi schrieb:> Also eins ist klar, wenn die Firma auf prähistorische Tools setzt, sind> dort Amateure am Werk, die anscheinend nicht viel begriffen haben.
Was du nicht begriffen hast ist daß man mit Software Geld verdienen
will. Ständig mit den neuesten Tools rumspielen bevor man die alten auch
nur zu 50% verstanden hat ist zwar zur Zeit modern, was hinten raus
kommt sieht man allerdings deutlich an den Produkten die immer
schlechter werden, so daß das nicht mal mit modernerer Hardware
überdeckt werden kann.
Wer mit Ansi C keine gute Software entwickeln kann schafft es auch mit
C++17 nicht, und wer mit K&R C gute Software geschrieben hat schafft das
nach Einarbeitung auch mit Java!
Ich habe meinen Job auch gekündigt, weil mit die Entwicklungsumgebung zu
altbacken war. Es mag sein, dass es sich oft finanziell nicht lohnt auf
eine neue Technologie zu setzen, aber da muss ich dann auch nicht
arbeiten. Also, wenn es dich stört, wechsel doch einfach.
klausi schrieb:> Die meisten Firmen sind doch sehr beschränkt und fragen, wieviel Jahre> Erfahrung haben Sie mit Tool XY?
Die Erfahrung kann man auch sammeln, indem man einmal im Jahr ein
Hobbyprojekt umsetzt. Muss man der Personalabteilung ja nicht auf die
Nase binden, dass es ein Hobbyprojekt war...
klausi schrieb:> Also eins ist klar, wenn die Firma auf prähistorische Tools setzt, sind> dort Amateure am Werk, die anscheinend nicht viel begriffen haben.> Wenigstens müsste man sich Gedanken um die Zukunft machen und da> investieren.>> Um langfristig vorne dabei zu sein, muss die Firma einen Schritt voraus> sein. Wenn es eine Klitsche ist, wie in deinem Fall, die keine Ahnung> hat von Strategie, ist sie schneller weg vom Fenster, als hier manche> glauben, die Kunden sind dann plötzlich weg.
Was ein Bullshit. Wenn Industriekunde vor 20 Jahren die teure
Automatisierungslösung ABC gekauft hat, dann erwartet er auch noch in 10
Jahren einen kompetenten Support, Ersatzteilversorgung und
Fehlerbeseitigung.
Wenn der Kunde aus der Luftfahrt kommt, dann liegt die übliche
Produktnuzuungsdauer teilweise bei 50+X Jahren.
Ich muss mich teilweise den Vorrednern anschliessen. Ich hatte auch mal
ein Produkt, das war in Entwicklung und wurde immer besser. Alle
Aenderungen waren mit dem PC-GUI verborgen. Es kamen ein paar Commands
hinzu, von denen der Anwender nichts merkte. Irgendwann meinte
einHauptkunde, er haette mein Device als Subsystem seines Produktes
"medizin-zertifiziert". Daher muessten Hardware und software eingefroren
werden, inklusive QA auf meiner Seite. Dann fragt man sich, welche
Stueckzahlen nehmen die anderen Kunden, alsdass es sich lohnen wuerde
das Produkt weiterzuentwickeln. Das war vor 15 Jahren. Ich habe immer
noch einen Notebook mit der Toolchain drauf. Falls es denn mal wieder
einen Support benoetigen wuerde. Mit WinXP. Das Produkt laeuft nun seit
20 Jahren, und ist immer noch sehr gut. Es gibt extrem wenige Ausfaelle.
Die Erfahrung macht man nicht mit den Toolchains, sondern, wie setze ich
ein Projekt auf, sodass man's auch 10 Jahre durchziehen kann. Welche
Debugmoeglichkeiten habe ich, welche Debugmoeglichkeiten benoetige ich.
Allenfalls sollte man sich auf der Hoehe der Technologien halten. Wie
binde ich ein Device per Ethernet an. Wir binde ich's per Blauzahn an.
Wie binde ich's per WiFi an. Bedeutet dann auf der anderen Seite das
passende GUI. zB ein Browser. zB ein Tablet.
Und das sollte man optimalerweise waehrend der Arbeit tun koennen, und
sonst privat. Mir sind Firmen bekannt, die lassen die AN 10% der Zeit
nach eigenem Gutduenken weiterbilden. Auch wenn es etwas kostet.
Wir haben Anlagen, die vor über 30 Jahren installiert wurden und immer
noch laufen. Inzwischen ist es in dieser Branche dermaßen eng, dass die
immer weiter damit arbeiten und der Kunde freut sich immer darüber, dass
wir alles noch reparieren und warten können. Und zu allerletzt: Das
ganze wurde zum Teil mit 8051 Basic programmiert.
:-) Schnell das Weihwasser her !!!
Qwertz schrieb:> Ob du bereits Toolchain xy verwendest hast, interessiert keine Sau.
Das habe ich anders in Erinnerung: Beherrschen sie dies System,
beherrschen sie das System? Nein, dann können wir sie nicht gebrauchen.
Und nein, wir können ihnen nichts beibringen. Und nein, einarbeiten ist
auch nicht. Sie fangen am Montag mit 100% an.
Entscheidend sind die Konzepte, Lösungsansätze und Algorithmen, nicht
durch welche konkrete Toolchain die Software auf welchen konkreten
Controller gespielt wird.
Hallo,
Ich würde mal behaupten das es schon sinn macht mit der Zeit zu gehen
wenn es möglich ist. Das bedeutet gerade bei neuen Produkte auf aktuelle
Systeme zu setzen, denn die Software wird immer komplexer und moderne
Programmiersprachen und Verfahren helfen hier auf jedenfall Fehler zu
vermeiden.
Bei einem alt bewährten Produkt kann man davon ausgehen das schon 99,9%
der Fehler ausgemerzt sind. Also warum soll man hier nochmal umstellen?
Bei großen Weiterentwicklung ist das natürlich wieder etwas anderes.
Und es macht sehr wohl ein Unterschied ob ich immer nur C89 oder eben
aktuelles C++ programmiert habe, da im codieren durchaus große
Unterschiede sind. Jedoch muss man auch immer schauen ob die Komplexität
im Codieren oder im Problem liegt.
Le X. schrieb:> Entscheidend sind die Konzepte, Lösungsansätze und Algorithmen,> nicht> durch welche konkrete Toolchain die Software auf welchen konkreten> Controller gespielt wird.
Genau mein Reden. Ob du bereits Toolchain xy verwendest hast,
interessiert keine Sau. Und wenn doch, wie Gustav hier anmerkt...
Gustav K. schrieb:> Das habe ich anders in Erinnerung: Beherrschen sie dies System,> beherrschen sie das System? Nein, dann können wir sie nicht gebrauchen.> Und nein, wir können ihnen nichts beibringen. Und nein, einarbeiten ist> auch nicht. Sie fangen am Montag mit 100% an.
...dann lauf so schnell du kannst, bei so einem Unternehmen willst du eh
nicht arbeiten.
> Wie seht ihr das?
Ist doch kein Problem: schreibe dir deinen Transpiler der C++17
entgegennimmt und C89 rausgibt was du wiederum der originalen Toolchain
für das binäre verfütterst.
2-pass - na und?
Gustav K. schrieb:> Das habe ich anders in Erinnerung: Beherrschen sie dies System,> beherrschen sie das System? Nein, dann können wir sie nicht gebrauchen.> Und nein, wir können ihnen nichts beibringen. Und nein, einarbeiten ist> auch nicht. Sie fangen am Montag mit 100% an.
Das sind die Firmen, die herumjaulen, keine Leute zu finden. Aber keine
Sorge, der Markt regelt das, denn solche Firmen können dann auch keine
Projekte umsetzen und verschwinden daher vom Markt.
Michael schrieb:> moderne> Programmiersprachen und Verfahren helfen hier auf jedenfall Fehler zu> vermeiden.
Das würde ich so nicht unterschreiben.
ksudfgkjlsdakvjb
>Das bedeutet gerade bei neuen Produkte auf aktuelle Systeme zu setzen, denn die
Software wird immer komplexer und moderne Programmiersprachen und Verfahren helfen
hier auf jedenfall Fehler zu vermeiden.
Tja nicht in jedem Fall. Sowie ich Python fuer seine Libraries
bewundere, so ist unterliegend leider Abfall.
Ich denke eine effiziente Sprache benoetigt Definition und Deklaration
von Variablen. Denn nur so kann der Compiler auf Schreibfehler
ueberpruefen und ob der Code vollstaendig ist.
Andreas schrieb:> Ist es euch im Job wichtig, dass ihr eine moderne Umgebung benutzt?
Mir ist es wichtig das ich Werkzeuge verwenden kann die für meine
Karriere sinnvoll sind.
Ich hab Erfahrung mit KiCAD und Eagle, würde aber gerne Altium und vlt.
Mentor Hyperlynx lernen als Beispiel.
Wieso nicht ein gutes Gehalt bekommen und etwas dazu lernen? Ist doch
besser als nur ein gutes Gehalt bekommen und nix wertsteigerndes zu
lernen...
> Fragt ihr danach schon im Bewerbungsgespräch?
Ja, z.B. ob ich auf einam Linux System arbeiten kann. Ist doch völlig
sinnfrei wenn ich nachher in die Firma komme und merke das alles anders
ist. Dazu zeigt es noch interesse ....
Man muss hald bedenken das man für die Firma immer noch einen
ordentlichen wertgewinn darstellen muss. Deshalb -> eine Firma suchen
die zu einem passt...
Base64 U. schrieb:> Man muss hald bedenken das man für die Firma immer noch einen> ordentlichen wertgewinn darstellen muss.
Nein, das muss man nicht. Mir genügt es vollkommen, wenn am Ende des
Monats mein Gehalt auf dem Konto ist; ob ich einen Wertgewinn darstelle,
ist mir herzlich egal. Ich weiß sowieso, dass das Unternehmen auch ohne
mich laufen würde, jeder ist ersetzbar. Man gibt mir zwar zu verstehen,
dass man mich für einen guten Mann hält, das schmeichelt zumindest dem
Ego; viel darauf einbilden sollte man sich aber nicht.
Crank schrieb:> Wer entwickelt nach ner 40h Woche noch zuhause irgendeinen Krempel? Ohne> Witz..
Verstehe ich auch nicht, vielleicht ein Hardcore-Nerd, der nichts
anderes im Leben kennt und mag? In der Freizeit sollte man sich besser
einen Ausgleich zum Beruf schaffen, und nicht noch eine ähnliche
Tätigkeit verfolgen.
Qwertz schrieb:> Mir genügt es vollkommen, wenn am Ende des Monats mein Gehalt auf dem> Konto ist
Das bekommst du auch in Firmen, in denen die Tätigkeit deinen
persönlichen und fachlichen Interessen entspricht.
Gruß,
Crank schrieb:> Wer entwickelt nach ner 40h Woche noch zuhause irgendeinen Krempel? Ohne> Witz..
40h Arbeit + 20h private Projekte/Weiterbildung sind doch kein Problem.
Die Woche hat 168 Stunden, abzüglich den obigen 60h bleiben 108 Stunden
übrig. Pro Nacht 8 Stunden Schlaf nochmal 54 Stunden weg. Bleiben noch
satte 52 Stunden für Familie, Einkaufen, Freizeit usw.
Wem das nicht reicht, hat auch kein Interesse an einer prof. Karriere
auf permanent hohem Level. Was auch völlig ok ist. Aber die Zeit ist
sicher nicht der Faktor der dagegen spricht.
Cyblord -. schrieb:> 20h private Projekte/Weiterbildung sind doch kein Problem
Müssen ja nicht 20 Stunden sein.
Hier wird für Interessierte aktuell https://www.pluralsight.com/
pilotiert ob das Angebot was taugt.
Cyblord -. schrieb:> Wem das nicht reicht, hat auch kein Interesse an einer prof. Karriere> auf permanent hohem Level.
Seit wann macht man mit technischen Kenntnissen Karriere?!
Nop schrieb:> Cyblord -. schrieb:>>> Wem das nicht reicht, hat auch kein Interesse an einer prof. Karriere>> auf permanent hohem Level.>> Seit wann macht man mit technischen Kenntnissen Karriere?!
Fachkarrieren gibt es schon auch noch.
Das ist natürlich eine andere Karriere als du dir das vorstellst. Aber
nicht jeder möchte den ganzen Tag wie ein Konfirmand rumlaufen.
Cyblord -. schrieb:> Fachkarrieren gibt es schon auch noch.
Auch die macht man nicht mit Detailskenntnissen. Mit denen ist man eine
gute Arbeitsbiene und bleibt auch genau das. Man wird u.U. sehr
interessante technische Aufgaben machen, aber Karriere ist das nicht.
Nop schrieb:> Cyblord -. schrieb:>>> Fachkarrieren gibt es schon auch noch.>> Auch die macht man nicht mit Detailskenntnissen. Mit denen ist man eine> gute Arbeitsbiene und bleibt auch genau das. Man wird u.U. sehr> interessante technische Aufgaben machen, aber Karriere ist das nicht.
Da bin ich anderer Meinung. Man darf nur nicht meinen dass Fachkentnisse
allein ausreichen. Aber solides aktuelles Fachwissen schadet nie.
Nop schrieb:> Cyblord -. schrieb:>>> Fachkarrieren gibt es schon auch noch.>> Auch die macht man nicht mit Detailskenntnissen. Mit denen ist man eine> gute Arbeitsbiene und bleibt auch genau das. Man wird u.U. sehr> interessante technische Aufgaben machen, aber Karriere ist das nicht.
Was ist denn eine Karriere? In vielen Firmen gibt es ganz offiziell zwei
parallele Zweige, Management und Technical. Die sind gleichgestellt bis
hoch zum CTO.
Also wenn mich der Chef auf eine Baustelle schickt, wo nur Nägel
einzuhämmern sind, reicht mir jeder Hammer, der seinen Dienst tut. Wo
Torquehead Schrauben einzudrehen sind, hätte ich gerne einen
Akkuschrauber, aber es muss nicht das neuste Modell sein (im Gegenteil
bin ich bei Werkzeugen, die erwiesenermassen ihren Dienst tun, in der
Regel auf der sichereren Seite).
Das Problem mit Tools ist genau das gleiche Problem wie mit jeder
Software: Einmal verkauft, verdient man nichts mehr dran, also muss der
Hersteller sich "neue" features ausdenken und vermarkten, um die nächste
Generation noch verkaufen zu können. Ob die wirklich Mehrwert bringen,
muss man im Einzelfall sehen.
Gerade was IDEs angeht, hat sich meiner Erfahrung nach in den letzten 5
Jahren da nichts mehr positives getan. Im Gegenteil. Ich will nicht,
dass irgendein Hintergundprozess versucht während ich tippe in Echtzeit
nachzukompilieren. Ja, ich WEISS; dass es MeineVar nicht gibt, kannst Du
nicht wenigstens warten, bis ich MeineVariable zu Ende getippt habe,
bevor Du mir das Outputfenster mit Errors zumüllst? Oder MICH einfach
"Build" drücken lassen, wenn ICH es für richtig halte? Und stattdessen
während des blöden JIT kompilierens mit einer Exception abzusemmeln,
bevor ich die Funktion zu Ende geschrieben oder die Datei gespeichert
habe - uncool.
Tools sind Werkzeueg, kein Selbstzweck. Alles Andere wurde hier ja schon
geschrieben.
Qwertz schrieb:> Crank schrieb:>> Wer entwickelt nach ner 40h Woche noch zuhause irgendeinen Krempel? Ohne>> Witz..>> Verstehe ich auch nicht, vielleicht ein Hardcore-Nerd, der nichts> anderes im Leben kennt und mag? In der Freizeit sollte man sich besser> einen Ausgleich zum Beruf schaffen, und nicht noch eine ähnliche> Tätigkeit verfolgen.
Naja, (gefühlte) Not macht erfinderisch.
Man kann ja auch die Gartenbewässerung automatisieren, nur halt nicht
mit einer Logo (das kann ja jeder...), sondern mit was Selbstgebautem.
Und ggf. noch mit Smartphon-Anbindung per Wlan.
...und schon hat man Gelegentheit sich mit was neuem zu befassen.