https://entwickler.de/feed/rss2

Alle an Bord? Herausforderungen für Cross-Plattform im Web (09.04.2021 12:00:03)

Web-Apps funktionieren auf allen Plattformen ? damit das richtig gut klappt, müssen Entwickler jedoch einiges beachten Auch das Web funktioniert nämlich nicht überall gleich Worauf gilt es zu achten, um wirklich allen Nutzern gleichermaßen gerecht zu werden?

Der Beitrag Alle an Bord? Herausforderungen für Cross-Plattform im Web ist auf entwicklerde erschienen


.NET 6 Preview 3: Halbzeit auf dem Weg zur neuen Version (09.04.2021 11:38:39)

Die dritte Preview für NET 6 ist erschienen Dieses Mal legte das NET-Entwickler-Team den Fokus auf die Performance Was gibt es Neues und wie geht es weiter?

Microsoft hat NET 6 Preview 3 veröffentlicht ? ganz im Sinne der versprochenen monatlichen Updates Damit befinden wir uns etwa auf halbem Weg zu NET 6, wie Richard Lander, Program Manager im NET Team, im Blogeintrag zum Release mitteilt

Die dritte Preview bringt einige low-level Performance-Updates mit, während größere Neuerungen ? Stichwort MAUI ? ausbleiben Für die kommenden Previews sind allerdings umfangreichere Änderungen geplant, bevor schließlich in den Release Candidates an der Qualität gefeilt werden soll

Neuerungen in Preview 3

Das neue als unsafe deklarierte API CollectionsMarshalGetValueRef wurde hinzugefügt, um das Aktualisieren von struct-Werten in Dictionaries zu beschleunigen Das API ist jedoch nur für High-Performance-Szenarien ausgelegt

Zudem soll sich die Interface-Casting-Performance in Preview 3 um 16 bis 38 Prozent erhöht haben, was besonders dem Pattern Matching in C# sowohl zu als auch zwischen Interfaces zugute kommen soll

NET Hot Reload

Neben weiteren Optimierungen gibt es auch Neues für ASPNET Core, wie in einem eigenen Blogpost aufgeführt wurde In ASPNET-Core- und Blazor-Projekten ist nun anfänglicher Support für NET Hot Reload mit an Bord Dazu wird das Projekt mittels dotnet watch ausgeführt; am Output sollte erkennbar sein, dass Hot Reload aktiviert ist:

watch : Hot reload enabled For a list of supported edits, see https://akams/dotnet/hot-reload Press "Ctrl + R" to restart

Für einen Rebuild und Neustart der App, der jederzeit durchgeführt werden kann, wird ? wie im Output zu sehen ? in der Konsole Strg + R eingegeben In der laufenden App wird jeder App State gesichert

Alles weitere zu NET 6 Preview 3 ist dem Blogeintrag von Richard Lander zu entnehmen

Der Beitrag NET 6 Preview 3: Halbzeit auf dem Weg zur neuen Version ist auf entwicklerde erschienen


Software-Architektur-Trends 2021: ?Es wird immer wichtiger, dass Software sich schnell verändern kann? (08.04.2021 17:57:46)

Der Software Architecture Summit stellt an drei konzentrierten Konferenztagen aktuelle Themen der Software-Architektur in den Fokus Wir haben uns vorab mit Stefan Tilkov, Software-Architekt bei INNOQ und Program Chair des Summits, über seinen Begriff einer zeitgemäßen Architekturarbeit und die Architektur-Trends 2021 unterhalten

Software-Architektur steht aktuell hoch im Kurs Kein Wunder, hat die Cloud doch viele traditionelle Architektur-Muster auf den Kopf gestellt Sind Microservices die Lösung? Was bedeuten die verteilten Backends fürs Frontend? Welche Trümpfe halten Event-getriebene und reaktive Anwendungen bereit? Und wie bringen wir die vielen Legacy-Anwendungen sinnvoll in diese Schöne neue Welt?

Der Software Architecture Summit diskutiert diese und weitere Fragen konzentriert an drei Konferenztagen Program Chair Stefan Tilkov gibt uns im Interview Einblicke in aktuelle Architektur-Debatten und Themen jenseits der Trends

Zeitgemäße Softwarearchitektur

Der Software-Architektur-Summit stellt verschiedene Ansätze für zeitgemäße Software-Architekturen in den Fokus Wenn wir zunächst einmal beim Wort ?zeitgemäß? bleiben: Was macht eine zeitgemäße Architektur aus?

Stefan Tilkov: Es mag vielleicht wie ein Widerspruch klingen, aber zeitgemäß bedeutet für mich vor allem, dass die Architektur nicht einer Mode folgen, sondern zum einen zu den Anforderungen passen und zum anderen Raum für Veränderung lassen sollte Wer glaubt, dass ein bestimmter Architekturansatz, der gerade populär ist, das auch bleibt, irrt in der Regel

Welche Herausforderungen an Software-Architekturen sind in den letzten Jahren neu hinzugekommen?

Stefan Tilkov: Software wird immer wichtiger, und dass sie sich schnell verändern kann, um auf neue Rahmenbedingungen zu reagieren, wird für viele Unternehmen und Organisationen zu einem absolut kritischen Erfolgsfaktor Ich nehme immer mehr wahr, dass die Zeit, die benötigt wird, um eine Idee vom Whiteboard über alle notwendigen Schritte in Produktion zu bringen ? die Time to Market ? das allerwichtigste Kriterium ist Natürlich gab es diese Anforderung auch schon vorher, aber sie war in der gleichen Kategorie wie zB Kosteneffizienz oder Portierbarkeit Neue Systeme so zu entwickeln, dass sie sich schnell ändern können, ist schon eine Herausforderung; es alten, bestehenden Systemen beizubringen, eine noch viel größere

Was ist dein Thema auf dem Summit, und was findest du persönlich spannend daran?

Stefan Tilkov: Mein Kollege Johannes und ich werden gemeinsam vermitteln, wie man Qualitätsanforderungen als Treiber für Architekturentscheidungen praktisch verwenden kann ? damit etwas herauskommt, das nicht nur abstrakt »gut« ist was niemandem etwas bringt, sondern tatsächlich zum Kontext passt

Creating a hybrid and multi-cloud strategy using Azure API Management

Eldert Grootenboer Motion10

From Horror Story to Fairy Tale: Writing code people want to read

Michael Dowden Andromeda Galactic Solutions

Architektur-Trends

Welcher Trend der Software-Architektur wird deiner Einschätzung nach im Jahr 2021 Fahrt aufnehmen?

Stefan Tilkov: Ich glaube, dass wir immer stärker spüren, dass Benutzer:innen in den Mittelpunkt oder vielleicht besser: an den Startpunkt gestellt werden Software zu entwickeln, die deren aktuelle Bedürfnisse umsetzt und sich schnell an neue anpassen lässt, für alle gleichermaßen schnell, effektiv und effizient zugänglich ist, nicht enttäuscht, sondern begeistert, Technologie nicht als Selbstzweck nutzt, sondern so, dass ein besserer Zugang zu Daten und Funktionen möglich ist: Das sollte im Mittelpunkt stehen und tut es nach meinem Empfinden auch immer häufiger

Welches Architektur-Thema abseits der Hypes und Trends sollte deiner Meinung nach eine größere Beachtung finden?

Stefan Tilkov: Barrierefreiheit! Ich bin maßlos enttäuscht, dass wir die Technologien, die uns heute zur Verfügung stehen, oft ohne nachvollziehbaren Grund so verwenden, dass sie eine Menge Menschen völlig unnötig ausschließen Das ist nicht nur ethisch und moralisch falsch, sondern auch wirtschaftlich völlig unsinnig

Was ist das wichtigste Take-away deines Workshops, das die Teilnehmer mit nach Hause nehmen sollten?

Stefan Tilkov: Nicht jedem Hype hinterherlaufen, aber auch nicht alles ablehnen, weil es gerade gehypt wird, sondern anforderungsgetrieben eine große Menge von Optionen, die man im Werkzeugkoffer hat, passend zur jeweiligen Situation einsetzen

Vielen Dank für das Interview!

Stefan Tilkov ist Geschäftsführer und Principal Consultant bei INNOQ, wo er sich vorwiegend mit der strategischen Beratung von Kunden im Umfeld von Softwarearchitekturen beschäftigt Er ist Autor des Buchs ?REST und HTTP?, Mitherausgeber von ?SOA-Expertenwissen? beide dpunktverlag, Autor zahlreicher Fachartikel und häufiger Sprecher auf internationalen Konferenzen

Der Beitrag Software-Architektur-Trends 2021: „Es wird immer wichtiger, dass Software sich schnell verändern kann“ ist auf entwicklerde erschienen


Quo vadis, Security? (08.04.2021 12:54:19)

Durch die Verschiebungen innerhalb der IT-Branche hin zu immer mehr Cloud-Computing und ihren Providern stellt sich häufig die Frage nach den Zuständigkeiten im Bereich IT-Security Häufig gibt es bei der Umstellung Bedenken innerhalb von Unternehmen ob eventuell verlorengehender Autonomität und dem Verwerfen lange entwickelter Routinen und Richtlinien Man muss allerdings gar nicht alle bisherigen Standards über Bord werfen

Teamautonomie wird in Zeiten von Cloud-Computing großgeschrieben Ich habe in dieser Kolumne schon mehrfach Plädoyers dafür gehalten, dass Teams entsprechend des DevOps-Gedankens die Verantwortung nicht nur für Softwarearchitektur und Code übernehmen, sondern auch für den Betrieb und damit verbundene Sicherheitsthemen Mit modernen PaaS- und Serverless-Diensten wird das machbar Nächtliche Patchorgien oder manuell installierte und gewartete Firewalls gibt es bei Cloud-native-Softwarelösungen in den großen Public-Cloud-Umgebungen nicht mehr Für die Basissicherheit von Plattformen wie Webfarmen, Datenbankclustern und Message Brokern sorgt der Cloud-Provider Für die Absicherung auf Anwendungsebene sind einfach zu integrierende Komponenten für Authentifizierung, Verschlüsselung und Logging verfügbar Teams, die ihre Cloud-Umgebung kennen, eine gute Basisausbildung in der Entwicklung sicherer Software haben und das notwendige Verantwortungsbewusstsein mitbringen, sind in der Lage, die Gesamtverantwortung für ihre Cloud-basierenden Lösungen zu übernehmen

Veränderungen sind schwierig

Eine Verschiebung von Verantwortung weg von zentralen Betriebs- und Sicherheitsteams hin zu den dezentralen Anwendungsteams sorgt meiner Erfahrung nach in vielen Organisationen für nicht unwesentliche Herausforderungen Die über Jahre von Sicherheitsverantwortlichen erstellten Richtlinien sind in der Cloud nicht unverändert anwendbar Im Gegenteil, sie sind oft hinderlich und kontraproduktiv Hinzu kommen oft Schwierigkeiten auf persönlicher Ebene Mitglieder zentraler Betriebs- und Sicherheitsabteilungen suchen ihre Rolle in einer von autonomen DevSecOps-Teams geprägten Welt Änderungen werden nicht immer mit offenen Armen willkommen geheißen Man sieht den eigenen Einflussbereich schwinden und hat Bedenken, ob die Entwicklungsteams wirklich das notwendige Wissen und die erforderliche Einstellung für den stabilen und sicheren Betrieb ihrer Software besitzen

Zentrale Teams sind nicht obsolet

Es versteht sich von selbst, dass es in größeren Organisationen dedizierte Teams für die Sicherheit der eigenen IT-Infrastruktur z B Netzwerk, lokal installierte Server, virtuelle Maschinen, Laptops, Smartphones etc braucht Mir geht es jedoch hier um die Sicherheit von Softwarelösungen in der Public Cloud, die von autonomen Teams gestaltet und entwickelt werden Selbst in diesem Umfeld halte ich persönlich in Organisationen ab einer gewissen Größe zentrale Teams, die gewisse Aufgaben für den Schutz der Softwarekomponenten in der Cloud übernehmen, für sinnvoll und notwendig Ihre Rolle ändert sich aber In Folge möchte ich Beispiele dafür nennen, wie zentrale Sicherheitsteams zur gesamtheitlichen Cloud-Security beitragen können

Beratung

Nicht alle Softwareentwicklerinnen und -entwickler haben eine solide Ausbildung und umfangreiche praktische Erfahrung im Bereich Softwaresicherheit So können z B Wissenslücken bei Netzwerksicherheit, Verschlüsselung, digitalen Signaturen etc bestehen Der Entwicklungsbedarf muss aber nicht nur technischer Natur, sondern kann auch oft mangelndes Bewusstsein für die Wichtigkeit von IT-Sicherheit und für Sicherheitsrisiken sein Die Folge sind Sicherheitslücken auf Prozessebene, die von Angreifern ausgenutzt werden können

Zentralen Sicherheitsteams kommt an dieser Stelle eine wichtige, beratende Rolle zu Sie werden zu Servant Leaders, führen also die Teams in Sachen IT-Sicherheit in der Cloud, indem sie ihnen dienen bzw Hilfe und Beratung anbieten Hier einige Beispiele für konkrete Angebote:

  • Organisation und Durchführung von Weiterbildungsmaßnahmen über sicherheitsrelevante Dienste in den jeweiligen Public-Cloud-Umgebungen

  • Schulungen und Workshops zu sicherheitsbezogenem Basiswissen technisch, organisatorisch

  • Zusammenfassung zwingend einzuhaltender, organisationsspezifischer Rahmenbedingungen z B besondere rechtliche Anforderungen an IT-Sicherheit; Ableitung konkreter technischer Handlungsanweisungen

  • kollegial abgewickelte Code- und Architekturreviews

  • Organisation und Begleitung spezifischer Sicherheitstests z B Zertifizierungen, Penetrationstests

  • Checklisten und Entwurfsmuster technisch, organisatorisch

  • Bereitstellung von Beispielcode und -projekten

  • Empfehlungen für zu nutzende und zu vermeidende Komponenten Cloud-Dienste, Softwarekomponenten

  • Einbringen von Spezialwissen z B Pair Programming bei besonders sicherheitskritischen Softwareteilen

Ich möchte an hier betonen, dass die Teammitglieder, die sich auf Produkt- und Projektmanagement konzentrieren, genauso Adressaten der genannten Maßnahmen sind wie die, die Code schreiben In meiner Beratungsarbeit mit Teams, die in Richtung Cloud gehen, merke ich immer wieder, dass Sicherheit häufig auf technische Aspekte reduziert wird Sicherheitsaspekte müssen allerdings bereits bei der fachlichen Gestaltung der Software berücksichtigt werden und das Produktmanagement muss dem Thema Sicherheit bei der Priorisierung der Aufgaben ausreichend Raum geben Auch wenn es um kaufmännische Aspekte wie Abopreise oder Betriebskostenabschätzungen von Lösungen in der Public Cloud geht, muss Sicherheit im Hinterkopf behalten werden Sonst kommt es zu Sparmaßnahmen an falschen Stellen, die negative Auswirkungen auf die Cloud-Sicherheit haben

Monitoring

Selbst bei noch so engagierten DevSecOps-Teams sind Fehler unvermeidlich Zentrale Sicherheitsteams sollten für diese Fälle ein digitales Sicherheitsnetz aufspannen, das Fehler erkennt, auf sie hinweist und vielleicht sogar verhindert bzw automatisch korrigiert Alle großen Public-Cloud-Plattformen bieten entsprechende Dienste an Im Fall von Microsoft wären hier beispielsweise Azure Security Center, Azure Policy oder Azure Tenant Security Solution zu nennen Mit Diensten wie diesen lassen sich zwingend einzuhaltende Richtlinien sicherstellen, automatische Sicherheitsprüfungen durchführen, automatische Sicherheitsbewertungen erstellen, fehlerhafte Konfigurationen automatisch ändern und vieles mehr

Das richtige Maß an zentral definierten Regeln und Teamautonomie zu finden, ist in diesem Zusammenhang nicht einfach Die Verlockung, Sicherheitslücken erst gar nicht aufkommen zu lassen und daher bei erzwungenen Richtlinien sehr strikt zu sein, ist groß Das steht aber im Gegensatz dazu, dass autonome Teams selbständig die besten Lösungen für ihre konkreten Herausforderungen finden sollen Ich möchte an dieser Stelle nochmals auf den Grundgedanken des Servant Leaderships verweisen Zentrale Sicherheitsteams sollten nicht zu Verhinderern werden, vor denen man als DevSecOps-Team Angst haben muss, sondern vielmehr zu hilfreichen Begleitern, die den Teams Sicherheit geben

Zentrale Dienste

In jeder größeren Cloud-Umgebung gibt es zentrale Dienste, die nicht einem einzelnen DevSecOps-Team zugeordnet werden können Hier einige auf Microsoft Azure bezogene Beispiele:

  • Auswahl der entsprechenden Azure-Active-Directory-AAD-Lizenzform Free, Premium etc

  • AAD-Konfiguration Multi-Factor Authentication, Conditional Access, Privileged Identity Management

  • Gliederung der Azure Subscriptions

  • Vergabe von Berechtigungen auf AAD-Tenant- und Subscription-Ebene

  • Planung und Umsetzung zentraler, virtueller Netzwerkinfrastruktur z B VPN Gateway aus dem Firmennetzwerk, zentrale DNS-Infrastruktur

Punkte wie diese sind für die sichere und reibungslose Nutzung einer Public-Cloud-Umgebung in größeren Organisationen entscheidend und meiner Ansicht nach am besten bei einem zentralen IT-Sicherheitsteam aufgehoben Ich habe bei meiner Arbeit mit Kunden schon mehrfach erlebt, dass die Verantwortung für zentrale Cloud-Dienste ungeplant einfach dem ersten Team zugefallen ist, das den Weg in die Cloud gewagt hat An sich bin ich ein großer Freund hemdsärmeliger, unbürokratischer Herangehensweisen an neue Themen Organisationen müssen jedoch erkennen, wenn sich die Cloud von einem Randthema weg entwickelt und sich in größerem Umfang ausbreitet In diesem Fall muss die Verantwortung für zentrale Cloud-Themen zu einem Team wandern, das dafür die notwendigen Kompetenzen und Ressourcen hat

Unterstützung durch das Management

Der Erfolg des Wandels eines zentralen IT-Sicherheitsteams, der mit der Entwicklung von Cloud-native-Anwendungen verbunden ist, hängt entscheidend von der Unterstützung durch das Managementteam ab Rollenbeschreibungen ändern sich, Verantwortlichkeiten müssen neu verteilt werden, Mitarbeiterinnen und Mitarbeiter werden zum Teil in andere Teams wandern, neue Talente müssen an Bord geholt werden, erfahrene Teammitglieder brauchen entsprechende Weiterbildung etc Diese Maßnahmen brauchen Zeit und ein gewisses Budget

Das zentrale IT-Sicherheitsteam muss in Sachen Public Cloud mit Kompetenzen und Verantwortlichkeiten ausgestattet werden, sonst folgen Frustration und Abwanderung wichtiger Teammitglieder Kompetenzen ohne Verantwortung bergen die Gefahr von Entscheidungen, mit undurchdachten Auswirkungen, die Andere auszubaden haben Insofern hat ein IT-Sicherheitsprojekt mit Fokus auf Public Cloud meiner Erfahrung nach immer einen wesentlichen organisatorischen Anteil und braucht daher Managementunterstützung auf strategischer Ebene

 

Der Beitrag Quo vadis, Security? ist auf entwicklerde erschienen


Auf Lamas Spuren: Mit vielen kleinen Schritten zum perfekten Visual Studio (08.04.2021 12:00:14)

Je umfangreicher ein Produkt, desto schwieriger ist die Wartung und desto steiler die dazugehörende Lernkurve Das Anbieten eines Plug-in-Systems schafft hier Abhilfe ? ein Verfahren, das Microsoft in Visual Studio seit langer Zeit unterstützt Zeit für eine kleine Liste von besonders interessanten Extensions

Der Beitrag Auf Lamas Spuren: Mit vielen kleinen Schritten zum perfekten Visual Studio ist auf entwicklerde erschienen


Von Pipelines und Automatisierung: Buddy ? die moderne Lösung zur DevOps-Automation (07.04.2021 12:00:31)

Webentwicklung kann mitunter ein kompliziertes Terrain sein: Während Updates bei komplexen Applikationen weiterhin eine beliebte Fehlerquelle sind, sank die Akzeptanz für Komplikationen in diesem Bereich Eine mögliche Lösung liegt in CI/CD Pipelines Das Tool Buddy soll nun Entwicklern das Leben dabei deutlich vereinfachen

Der Beitrag Von Pipelines und Automatisierung: Buddy ? die moderne Lösung zur DevOps-Automation ist auf entwicklerde erschienen


Women in Tech: ?Ich habe die (Tech-)Branche sehr offen und einladend erlebt.? (07.04.2021 11:27:36)

In unserer Artikelserie ?Women in Tech? stellen wir inspirierende Frauen vor, die erfolgreich in der IT-Branche Fuß gefasst haben Heute im Fokus: Christina Hans, Lead Teacher für das Data Analytics Bootcamp bei Ironhack und Data Scientist bei Eyeo in Berlin

Die Tech-Industrie wird von Männern dominiert ? so weit, so schlecht Doch langsam, aber sicher bekommt der sogenannte Boys Club Gesellschaft von begabten Frauen: Immer mehr Frauen fassen in der Branche Fuß

Aus diesem Grund wollen wir hier spannenden und inspirierenden Frauen die Möglichkeit geben, sich vorzustellen und zu erzählen, wie und weshalb sie den Weg in die Tech-Branche gewählt haben Aber auch Themen wie Geschlechtervorurteile, Herausforderungen oder Förderungsmöglichkeiten kommen zur Sprache

Unsere Woman in Tech: Christina Hans

Christina hat ihre Promotion im Fach Finanzen an der Universitat Pompeu Fabra in Barcelona gemacht Anschließend hat sie ihre wissenschaftliche Laufbahn fortgesetzt und war Professorin für Global Economics, bzw für Economics and Data Science am Parami Institute of Liberal Arts and Sciences Gleichzeitig war Christina beim Startup Cien angestellt, das mit Künstlicher Intelligenz arbeitet, um die Produktivität von Sales-Teams zu erhöhen Im Moment arbeitet sie Teilzeit als Lead Teacher für das Data Analytics Bootcamp bei Ironhack in Berlin und gleichzeitig als Data Scientist bei Eyeo, dem führenden Anbieter von Adblockern Bei Ironhack berät sie eine Reihe von Tech-Unternehmen im Bereich Data Science

Wie entstand dein Interesse an der Tech-Branche?

[…] letzten Endes haben alle kleinen Teile ein wichtiges Puzzle ergeben

Mein Einstieg in die Tech Branche verlief ehrlich gesagt relativ langsam und graduell! Mein erster Kontakt war ein Praktikum während meines Bachelorstudiums ? mein Schwerpunkt war an sich internationale Betriebswirtschaft, aber irgendwie bin ich dann in einem kleinen IT-Startup in Barcelona gelandet, [project-open] Das fand ich dann erstmal ganz spannend und auch die Lernkurve bei dem Einarbeiten in neue Technologie und die logischen Denkansätze waren genau mein Ding

Wie für vermutlich viele in der Branche war mein anschließender Weg nicht ganz linear, aber letzten Endes haben alle kleinen Teile ein wichtiges Puzzle ergeben In meinem Studium habe ich mit Betriebswirtschaft angefangen und bin darüber zu Volkswirtschaft und Finanzen an der Barcelona Graduate School of Economics gekommen Dies hat mein Interesse an quantitativem Denken gefördert und irgendwie bin ich dann in einem PhD-Programm in Finanzen gelandet ? hier fand dann der erste Kontakt mit Big Data statt Zum Ende meines Doktors hin, in einer Zeit der Seelensuche nach dem, was ich denn danach gerne anpacken würde, bin ich mit einem Startup in Kontakt gekommen, Cien, was sich gerade in der Stadt angesiedelt hat Die Gründer hatten die Vision einer App, welche Verkaufsproduktivität mithilfe von künstlicher Intelligenz vorhersagt und erhöht ? nach ein paar Gesprächen haben sie mich als ersten Data Scientist in einem Startup von damals nur 4 Personen angestellt Das wär zunächst eine ganz schöne Mammutaufgabe, aber auch etwas, wodurch ich sehr schnell sehr viel gelernt habe Hiermit habe ich dann den Finanzen den Rücken gekehrt und bin in der Tech-Branche geblieben!

Unterstützung

In allen Tätigkeiten hat mein Geschlecht bisher, ehrlich gesagt, keine Rolle gespielt […]

Ich habe in meiner Karriere viel Unterstützung gefunden Ich hatte das große Glück, einen super Doktorvater zu haben und in jeder Firma, in der ich bisher gearbeitet habe, hatte ich großartige Chefs, Mentoren und Team Leads! Mir wurde sehr oft die Gelegenheit gegeben, mich in neue Themen einzuarbeiten und große Aufgaben anzugehen, die mich sehr gefordert aber auch gefördert haben In allen Tätigkeiten hat mein Geschlecht bisher, ehrlich gesagt, keine Rolle gespielt ? mir wurde viel Vertrauen entgegengebracht und ich habe immer die Gelegenheit bekommen, mich zu beweisen Ich habe die Erfahrung gemacht, dass meine Leistung immer gezählt hat und auch gewürdigt wurde Das spannende an der Tech-Branche ist, dass Teams oft sehr eng zusammenarbeiten, die Beiträge von einzelnen Personen viel zu einem großen Gesamtbild beitragen und dass es auch oft sehr messbar ist, wieviel Herzblut und Energie man investiert Ich habe die Branche daher sehr offen und einladend erlebt

Wie sieht dein Arbeitsalltag aus?

Momentan habe ich tatsächlich zwei Jobs in Tech! Zum einen bin ich Lead Teacher für das Data Analytics Bootcamp part-time bei Ironhack in Berlin Das Bootcamp ist ein sechsmonatiger Intensivkurs, in dem Studenten Kenntnisse in Programmiersprachen wie Python, statistischer Datenanalyse und maschinellem Lernen erwerben, mit sehr vielen Übungen und realitätsnahen Projekten Dazu habe ich vor kurzem noch eine Position als Data Scientist bei Eyeo angefangen, dem führenden Anbieter von Adblockern

Hindernisse für Frauen in der Tech-Branche

Ich glaube, eines der Hindernisse für Frauen ist der leider oft noch geringe Anteil von Frauen in der Branche im Allgemeinen Wenn Vorbilder fehlen, kann das schon mal ganz schön schwierig sein, an sich selbst und seine Chancen zu glauben Traditionelle Branchenklischees suggerieren auch oft eine ?Tech Bro Culture?, welche einen exklusiven Eindruck erwecken kann ? glücklicherweise habe ich das in der Praxis jedoch nicht so erfahren!

Ich glaube eines der Probleme ist, dass wir als Gesellschaft oft annehmen: Männer sind gut in quantitativem Denken, Frauen haben gute ?Softskills? Daraus ergibt sich eine Negativspirale: Wenn ich als Person glaube, dass ich in etwas nicht gut bin oder nicht die nötigen Fähigkeiten habe, dann kann das ganz schnell in Angst und einer mentalen Blockade resultieren ? und dann schaffe ich es auch einmal tatsächlich nicht! Wenn wir von diesem Denkvermögen wegkommen, dann wäre auch die Verteilung in die Berufe hoffentlich eher gemäß dem, was sich die einzelnen Personen tatsächlich wünschen

Warum sollten mehr Frauen in der Tech-Branche arbeiten?

Ich glaube jeder Lebens- und Arbeitsbereich profitiert von Repräsentation Wenn Politik nur von alten Männern mit weißen Haaren gemacht wird, dann wird sich eine junge, diverse Generation nicht repräsentiert fühlen Und wenn Software nur von Männern entwickelt wird oder auch andere Forschung nur von Männern vorangetrieben wird, dann haben wir hier auch ein Problem der Repräsentation!

Wie sieht die Zukunft aus ? wird die Diversity-Debatte bald Geschichte sein?

Ich hoffe, dass wir als Gesellschaft irgendwann an einen Punkt angelangen, an dem jede Person ? unabhängig von Geschlecht, sexueller Orientierung, sozialem Hintergrund und mehr ? die gleichen Wahlmöglichkeiten zur Verfügung und die gleichen Chancen offenstehen Davon sind wir leider in verschiedener Hinsicht noch weit entfernt!

Tipps & Tricks

Mein Tipp wäre: glaube an dich selbst und an das, woran du Interesse hast! Ich mochte als Kind schon lieber Mathematik und Physik als Deutsch und Bildende Kunst ? na und? Es gibt keinen Grund warum solche Interessen und Tätigkeiten, die man damit ausüben kann, einer Männerwelt vorbehalten sind

Der Beitrag Women in Tech: „Ich habe die Tech-Branche sehr offen und einladend erlebt“ ist auf entwicklerde erschienen


Vorschläge aus dem Skillgraph: Ein Neo4j Microservice als Alternative zur Recommendation Engine (07.04.2021 10:50:12)

Je mehr Daten Recruitern zur Verfügung stehen, desto schneller kann der optimale Job gefunden werden Da das Ausfüllen von Profilen mittels den richtigen Vorschlägen leichter und schneller von der Hand geht, zeigt dieser Artikel, wie Sie Bewerbern eine automatisierte Liste an wahrscheinlichen Skills zur Verfügung stellen können

Im modernen IT-Recruiting dreht sich viel um Geschwindigkeit Geschmeidige Bedienung und schnelles Feedback werden erwartet, aber auf der anderen Seite ist die Suche nach dem besten Match zwischen Jobsuchenden und interessanten Dev-Jobs eine Suche nach der Nadel im Heuhaufen Besonders wenn Entwicklerinnen und Entwickler in neue Technologien oder Branchen einsteigen wollen, also bei den richtig interessanten Matches, ist es essenziell, ein gut ausgefülltes Profil zur Hand zu haben Eines, in dem auch Skills stehen, die nur so nebenbei gelernt wurden

Im Registrierungsprozess müssen also möglichst detailliert die technischen Skills abgefragt und von Alltagstool bis Nischentechnologie erfasst werden Nur: Wer hat schon Lust, durch eine Liste aller bekannten zumindest matchedio bekannten Tech-Skills zu blättern, um die paar Skills zu finden, die einem nicht als relevant eingefallen sind? Live-Suche mit Autovervollständigung schafft hier schon etwas Erleichterung, aber für eine wirklich gute User Experience muss etwas Smarteres her

© matchedio

Wenn wir aus der Masse an technischen Skills Vorhersagen machen könnten, was Entwickler und Entwicklerin noch können könnten und diese als relevante Vorschläge anbieten, wäre das eine Verbesserung an beiden Enden

© matchedio

Aber wie errät man laufend und personenbezogen, was eine Person für weitere Kenntnisse besitzt? In diesem Artikel beschreiben wir einen Ansatz, der schon ausgefüllte Skillsets, ein Graph Theorie Model und Neo4j verwendet, um möglichst treffend, aber auch schnell, solche Vorschläge zu generieren

Devs, die dieses Skillset haben, können auch…

Amazons ?Kunden, die diesen Artikel gekauft haben, kauften auch?-Funktion liefert hier eine gute Vorlage Wir haben bereits viele ausgefüllte Profile, bei denen wir übliche Häufigkeiten von Skills errechnen können, um daraus dann Vorschläge abzuleiten Eine statische Liste an ?beliebten? Skills wird allerdings dem Anspruch auf Personenbezug nicht gerecht Idealerweise sollte man an den bereits eingetragenen Skills erkennen können, um welche Art Entwickler bzw Entwicklerin es sich handelt und beispielsweise zum Skillset [?CSS?, ?HTML?] eher JavaScript vorschlagen als Kafka Um eine Heuristik für ?Devs, die dieses Skillset haben, können auch?? zu bauen, bietet es sich also an, die Häufigkeit von Skill-Kombinationen als Grundlage für Vorschläge zu nehmen

Modellierung mit Graph Sets

Wir haben also einen Datensatz an Profilen mit einem Set an beherrschten Skills und wollen daraus – für ein neues Set an Skills – einen sinnvollen Vorschlag machen, welcher Skill oft zusammen mit diesen Skills gekonnt wird Ein Weg, diese Fragestellung zu modellieren, ist ein Graph-Ansatz Dabei wird aus einem Datenset ein Graph gebaut, in dem alle Entwickler und Entwicklerinnen sowie alle Skills als nodes dargestellt werden Danach wird jeder Dev-node über relationships mit genau den Skill-nodes, die sich im Skillset der Person befinden, verbunden

© matchedio

Für einzelne Skills lässt sich hier schon ein intuitiv sinnvoller Vorschlag ablesen Einer Person, die HTML beherrscht, würde man zum Beispiel zuerst Angular vorschlagen, da 2 Profile sowohl Angular als auch HTML enthalten, als weitere Vorschläge kämen Java und PHP in Frage Wir berechnen also die Anzahl der Pfade [Skill1]-[Dev]-[Skill2], die im Datensatz vorkommen und speichern diesen Wert als Häufigkeit eines Skillpaares ab

© matchedio

Bekommt man ein Skillset mit mehreren Skills, zu dem Vorschläge erstellt werden sollen, muss sich die Frage gestellt werden, wie wichtig es ist, dass das gesamte Skillset in einem Entwicklerprofil vorkommt, bevor Vorschläge daraus abgeleitet werden So ist es zum Beispiel vorstellbar, für eine Entwicklerin, die schon C++ und Java angegeben hat, erst C vorzuschlagen und danach erst Angular Einfach weil das Profil von Entwicklerin 1 wirklich beide Skills C++ und Java enthält Wir haben uns stattdessen dafür entschieden, uns nur auf Skillpaare zu konzentrieren, um auch Fullstack Developern und anderen Profilen, die nicht so einfach in vorgeschriebene Boxen passen, sinnvolle Vorschläge präsentieren zu können Wir werden also den Wert eines Vorschlagskills berechnen, indem wir die Summe der Häufigkeit aller Skillpaare Vorschlagsskill, Skillsetskill für alle Skills im Skillset summieren

© matchedio

Mit diesem Modellziel im Kopf brauchen wir nun ein gutes Tool, um unseren Graph zu implementieren und Vorschläge schnell zu errechnen

Graph in Neo4j erstellen

Der Kenner wird schon an den Bildern erkannt haben, dass wir unseren Graphen in Neo4j bauen werden Das ist nicht nur übersichtlicher, da Neo4j als Graph Datenbank visuelle Darstellungstools bietet, die uns helfen, unsere Daten zu verstehen und Fehler zu finden, sondern wir werden sehen, dass sich auch die Häufigkeitsberechnung in Neo4j stark vereinfachen lässt Zuerst wollen wir allerdings unsere Profildaten in Neo4j als Graph anlegen Dafür erstellen wir die Entwickler-nodes und Skill-nodes über cypher calls in Neo4j:

//create developer nodesCREATE d1:Dev{name: 'dev1'}CREATE d2:Dev{name: 'dev2'}CREATE d3:Dev{name: 'dev3'}CREATE d4:Dev{name: 'dev4'}//create skill nodesCREATE s1:Skill{name:'c'}CREATE s2:Skill{name:'c++'}CREATE s3:Skill{name:'java'}CREATE s4:Skill{name:'angular'}CREATE s5:Skill{name:'html'}CREATE s6:Skill{name:'php'}

Danach fügen wir die relationships hinzu, die repräsentieren, wer welche Skills beherrscht:

//create knowledge relationshipsCREATE d1-[:KNOWS]->s1CREATE d1-[:KNOWS]->s2CREATE d1-[:KNOWS]->s3CREATE d2-[:KNOWS]->s3CREATE d2-[:KNOWS]->s4CREATE d3-[:KNOWS]->s3CREATE d3-[:KNOWS]->s4CREATE d3-[:KNOWS]->s5CREATE d4-[:KNOWS]->s4CREATE d4-[:KNOWS]->s5CREATE d4-[:KNOWS]->s6

Und erreichen dann mit einer einfachen Query das Beispielbild, das wir schon vorher gesehen haben, nur diesmal nicht so schön angeordnet da hat der Autor glatt gemogelt und per Hand arrangiert:

//Show graphMATCH n return n;

© matchedio

Preprocess für die Übersicht

Jetzt sind wir eigentlich bereit, einen cypher Query zu formulieren, der uns zu einem Skillset die Vorschlagsskills sortiert und nach Häufigkeit der Skillpaare ausgibt Allerdings müssten wir dafür immer über die Dev-nodes gehen und die Anzahl der Pfade von Skill 1 über einen Dev zu Skill 2 im Query zählen Da ist es doch übersichtlicher, die Häufigkeit, in der ein Skillpaar im gesamten Datensatz vorkommt, zunächst in einem Preprocessing Schritt zu berechnen und dann in folgenden Queries mit diesen errechneten Häufigkeiten zu arbeiten Besonders wenn man mehrere Vorschläge aus dem selben Datenstand berechnen möchte, lohnt sich das Preprocessing, da die folgenden Queries dadurch schneller werden

Unser preprocess-Schritt soll also für jedes Skillpaar im Graphen errechnen, wie viele Dev-nodes mit beiden Skill-nodes verbunden sind, also die Anzahl Pfade von Skill 1 über einen Dev zu Skill 2 In Neo4j syntax schreibt man so einen Pfad als s1:Skill-[:KNOWS]-:Dev-[:KNOWS]-s2:Skill und ein cypher Query, der diese Pfade zählt und das Ergebnis in eine relationship zwischen Skill 1 und Skill 2 als weight speichert Dies sieht dann wie folgt aus:

//create skill-pair edges from dev pathsMATCH path=s1:Skill-[:KNOWS]-:Dev-[:KNOWS]-s2:SkillWITH s1, s2, Countpath as amountMERGE s1-[p:SKILL_PAIR]-s2SET pweight = amount

Ab jetzt brauchen wir die Dev-nodes und KNOWS-relationships nicht mehr beachten und können mit Skill-nodes und SKILL_PAIR-relationships allein Vorschläge errechnen Unser Graph ist damit übersichtlicher, schneller und intuitiv verständlicher geworden:

//Show skillgraphMATCH n:Skill return n;

© matchedio

Man beachte, dass die Richtungen der SKILL_PAIR-relationships keine Bedeutung haben Bei den KNOWS-relationships ergab der Pfeil noch Sinn auch wenn wir die Richtung nicht gebraucht haben, aber hier, bei SKILL_PAIR, wird die Richtung arbiträr durch die Reihenfolge der Skills in unserer Query gesetzt Neo4j erlaubt leider keine echten undirected relationships, man muss als Entwickler bzw Entwicklerin also im Kopf haben, für welche Richtungen man sich interessiert und welche keinen Wert haben Wir werden in den Match Queries in diesem Artikel alle relationship-Richtungen ignorieren, indem wir, wie oben schon, :Dev-[:KNOWS]-s2:Skill statt :Dev-[:KNOWS]->s2:Skill verwenden – ohne Pfeil, der die Richtung vorgibt Auf diese Weise sucht Neo4j nun nach einer beliebig gerichteten relationship

Closest Skill Query

Bevor wir uns den Vorschlägen zu Skillsets widmen, wollen wir erstmal sehen, wie eine Query aussieht, die zu einem einzelnen Skill einen Vorschlag liefert Dafür durchsuchen wir mit MATCH alle SKILL_PAIR-relationships, die unseren Startskill s1 mit einem Vorschlagsskill s2 verbinden und sortieren die so erreichten Skills nach Gewicht der relationship:

//search closest singleMATCH s1:Skill-[r:SKILL_PAIR]-s2:SkillWHERE s1name=?html?RETURN s2name, rweightORDER BY rweight DESC

© matchedio

Das sieht schonmal vielversprechend und bisher sehr übersichtlich aus Für den nächsten Schritt brauchen wir jetzt das Konzept eines Skillsets, das wir in diesem Beispiel anhand einer Liste an Skillnamen zusammensuchen und dann im MATCH verwenden wollen Zum Zusammensuchen des Skillsets verwenden wir wieder MATCH und speichern das Ergebnis dann für die weitere Verwendung in der Query über ?as skill_nodes? ab:

WITH ['c', 'java'] as skillsMATCH st:Skill WHERE stname IN skillsWITH collectst as skill_nodes

Generell werden wir viel ?as xyz? verwenden, um in unserer Query Werte weiterzureichen oder nur verständlicher zu benennen Mit den relevanten skill_nodes in der Hand können wir jetzt die Query fortsetzen und per MATCH genau die SKILL_PAIR-relationships finden, die einen Skill in unserem Skillset mit einem Skill von außerhalb verbinden wir wollen ja nicht Skills vorschlagen, die der Entwickler oder die Entwicklerin bereits eingetragen hat:

MATCH s1:Skill-[r:SKILL_PAIR]-s2:SkillWHERE s1 IN skill_nodes AND NOT s2 IN skill_nodes

Insgesamt sieht die cypher Query, die unsere Vorschläge liefert, dann so aus:

//search closestWITH ['c', 'java'] as skillsMATCH st:Skill WHERE stname IN skillsWITH collectst as skill_nodesMATCH s1:Skill-[r:SKILL_PAIR]-s2:SkillWHERE s1 IN skill_nodes AND NOT s2 IN skill_nodesRETURN s2name as suggested_skill, SUMrweight as fitORDER BY fit DESC

© matchedio

Ergebnisse aus dem Microservice anfragen

Mit ein paar schönen Queries und einer manuell angefragten Lösung ist es natürlich nicht getan Sowohl das Erstellen des Häufigkeitsgraphen im Preprocessing und die Vorschlagsabfrage sollte häufig und automatisch und im Falle der Vorschlagsabfrage sogar quasi live durchführbar sein Zum Glück stellt Neo4j hier ein cypher-API zur Verfügung, das von recht vielen Sprachen aus über bereitgestellte Packages ansprechbar ist Für unser Problem erwarten wir viele winzige Anfragen nach jedem ausgewählten Skill fürs Skillset soll ein neues Vorschlagsset berechnet werden und haben uns daher für einen Go Microservice entschieden

Da wir sehr viele sehr zeitkritische kleine Anfragen nach Vorschlägen erwarten, haben wir die Berechnung des Häufigkeitsgraphen als Preprocessing vom Vorschlagsquery getrennt Dieser Häufigkeitsgraph bildet auf Basis unserer Profildaten eine beste Schätzung, wie oft Skillpaare zusammen gekonnt werden Er wird regelmäßig neu berechnet, um Änderungen und neue Profile einzufangen, da sich die Häufigkeiten von Skillpaaren aber eher langsam ändern und die Berechnung durch alle Daten fast eine Stunde dauert, updaten wir nur einmal die Woche Wir müssen etwas im Auge behalten, dass wir natürlich durch die Einschränkung auf schon bekannte Profile einen Bias in unseren Vorschlägen haben und damit wir nur weiter vorschlagen, was wir schon als Kombination kennen Nutzen alle nur noch die Skillvorschläge in der Profilerstellung und vergessen dadurch ihre seltenen Skillkombinationen, könnte ein zu erfolgreiches Vorschlags-Feature die Profile negativ beeinflussen Lösungsideen werden im Fazit angerissen

Erstmal haben wir einen gespeicherten Häufigkeitsgraph, der unsere beste Schätzung der Wirklichkeit enthält, dieser liegt im Neo4j Server in der Cloud und ist bereit, für Queries genutzt zu werden In Go spricht man Neo4j über den neo4j-go-driver an und arbeitet hier recht direkt mit cypher queries Wollen wir jetzt unsere Vorschlagsquery mit einem Skillset als Argument aufrufen, sieht das in etwa so aus diese Code Beispiele sind nur Schnipsel, die den Arbeitsfluss darstellen sollen:

// define the query with variable skillsetquery := `WITH $array as skillsMATCH st:Skill WHERE stid IN skillsWITH collectst as skill_nodesMATCH s1:Skill-[r:SKILL_PAIR]-s2:SkillWHERE s1 IN skill_nodes AND not s2 in skill_nodesRETURN s2name as name, s2id as id, SUMrweight as fitORDER by fit DESCLIMIT 50`// map skillset to name in querymappings := map[string]interface{}{"array": requestSkills,}// run query against open neo4j sessionskills, err = neo4jCollectsessionReadTransactionfunctx neo4jTransaction interface{},error {return txRunquery, mappings}

Eine relativ direkte Implementation der API-Schnittstelle, aber für unsere Zwecke genau richtig, da wir die cypher queries schon erarbeitet hatten Dieser Ansatz in einem Go Microservice verbaut lässt uns schnell, ausreichend aktuell und vor allem parallel die Vorschlagsanfragen abarbeiten

Fazit

Graphdarstellungen eignen sich oft, um Problemstellungen visuell verständlicher zu machen und mit Hilfe von Neo4j Queries kommt man auch schnell zu Ergebnissen, ohne Graph Algorithmen implementieren zu müssen Damit erschließt man sich pragmatisch Informationen aus dem eigenen Datenschatz, ohne für eine simple Vorschlag-Engine gleich Blackbox-Technologien wie Deep Learning auspacken zu müssen oder seine Anforderungen an den Fokus bestehender Recommendation Systems anzupassen, wie man sie aus dem eCommerce Sektor kennt

Für weitere Spielereien, wie das automatische Erkennen der anfangs erwähnten ?Typen? von Entwicklern und Entwicklerinnen, bietet Neo4j Implementationen von Community-Detection-Algorithmen wie zum Beispiel die Louvain Methode, mit der wir in unserem Skillgraphen die eng verbundenen Communities identifizieren könnten, um dann damit zum Beispiel seltene Skillkombinationen aus verschiedenen Communities anbieten zu können Dies wäre eine Strategie zum Ausbruch aus dem Bias der eigenen Daten, aber wie das Lehrbuch so schön sagt: ?This is left as an exercise for the reader?

Der Beitrag Vorschläge aus dem Skillgraph: Ein Neo4j Microservice als Alternative zur Recommendation Engine ist auf entwicklerde erschienen


Visual Studio Code März 2021: Neues für Extension-Verwaltung, Debugging und erleichterte Bedienung (06.04.2021 12:12:55)

Visual Studio Code 155 ist erschienen Es wurde mit vielen neuen Features ausgestattet, die unter anderem die Extension-Verwaltung und das Debugging betreffen Preview-Features sind ebenfalls mit an Bord

Microsoft hat das neueste monatliche Update von VS Code veröffentlicht: Visual Studio Code 155 wartet mit einer Vielzahl an Neuerungen auf ? für die erleichterte Bedienung, die Workbench, das integrierte Terminal, Debugging und mehr

Das neue Release steht für Windows, Linux und macOS zum Download bereit Wer zusätzlich schon Preview-Features ausprobieren möchte, kann parallel dazu den Insider Build installieren Aber zurück zur Stable Version: Was ist neu in VS Code 155?

Workbench

Quelle: https://codevisualstudiocom/updates/v1_55

Neben einem aufpolierten VS-Code-Logo für Apple-Nutzer im Stil der aktuellen Hauptversion macOS 11 Big Sur ? siehe Bild ? wurde auch am Inhalt der Workbench gearbeitet: Die neue Einstellung workbenchsashhoverDelay erlaubt es, die Verzögerung des Hover-Feedbacks von Sashes zu definieren, während die Listen/Baum-Navigation nun eine benutzerdefinierte Keyboard-Navigation unterstützt, was z B Notebook-Nutzern zugute kommen soll

Neuerungen in NET 60 ? das eine NET, sie alle zu beherrschen

mit Dr Holger Schwichtenberg DOTNET-DOKTOR

C# Workshop: ? was kommt Neues mit C# 10 und NET 6?

mit Rainer Stropek timecockpitcom

Funktionaler Code mit C# 9

Oliver Sturm DevExpress

 

Advanced Web Pentesting

mit Christian Schneider Schneider IT-Security

What Star Wars Taught Me About Secure System Design

mit Anne Oikarinen Nixu Corporation

Zudem wurde die Verwaltung von Extensions erweitert: VS Code 155 erkennt, wenn Extensions via VS Code CLI installiert oder deinstalliert wurden Sie können im aktiven Fenster aktiviert bzw deaktiviert werden

Terminal, Debugging und erleichterte Bedienung

Der Screen Reader ist nun in der Lage, mithilfe des „Say All“-Befehls 1000 Zeilen statt der bisher maximal 100 Zeilen vorzulesen In Zukunft soll es kein Limit geben, doch dafür sind noch einige Upstream Fixes notwendig Im Rahmen der Neuerung gilt editoraccessibilityPageSize als deprecated und soll noch in den nächsten Releases unterstützt werden, bevor es schließlich entfernt wird

Auch das Terminal wurde in VS Code 155 überarbeitet: Es unterstützt definierte Profile, die im Dropdown-Menü ausgewählt werden können, um nicht-standardmäßige Shells zu laden Das betrifft sowohl häufig gewählte als auch selbst definierbare Shells Beim Debugging steht nun ein Inline-Menü zur Verfügung, in dem Konditionen und Hit Points für Funktions-Breakpoints bearbeitet werden können Bisher wurde das automatisch geregelt, somit erhält der Nutzer mehr Kontrolle:

Quelle: https://codevisualstudiocom/updates/v1_55

Zu den weiteren Neuerungen in VS Code 155 zählen Preview-Features wie Verbesserungen am Markdown Renderer in Notebooks Die neue Extension „GitHub Pull Requests and Issues“ wird ebenfalls weiterentwickelt Details dazu gibt es im Changelog zu Version 0250

Alles weitere zu Visual Studio Code 155 findet sich in den Release Notes

Der Beitrag Visual Studio Code März 2021: Neues für Extension-Verwaltung, Debugging und erleichterte Bedienung ist auf entwicklerde erschienen


.NET 6, IT-Gehälter und Flutter 2 ? Unsere Highlights im März (06.04.2021 12:08:11)

Stetiger Wandel bleibt die Kontinuität der IT-Welt Der März zeigte uns das wieder eindrücklich und verzückte uns sowohl mit NET 6 Preview 2 als auch mit dem Release von Flutter 2 Ein weiteres Highlight ist der IT-Gehaltsreport 2021 Unsere Leserinnen und Leser interessierten sich unterdessen auch für unsere Artikel über das Recruiting von IT-Fachkräften und über das Zusammenspiel von IT-Security und Open Source

Die Osterfeiertage sind vorbei und wir alle dürften noch ziemlich erschöpft von gutem Essen und dem ein oder anderen Spaziergang sein, den man aufgrund des sonnigen Wetters endlich mal wieder in die Länge ziehen konnte Das Beste, was man in diesem Fall tun kann, ist Ruhe bewahren, bis 10 Zählen und schon ist unser Newsletter auch schon wieder gelesen und man hat alle wichtigen Informationen aus dem März aufgenommen Wir wünschen wieder viel Spaß mit unseren meistgelesenen Artikeln des Monats

Weltfrauentag 2021: Tech-Expertinnen diskutieren, wie man den Geschlechter-Bias angeht

Wir beginnen unser März-Ranking mit unserem Beitrag über die Gleichstellung der Geschlechter am Arbeitsplatz Es wird seit Jahren darüber gesprochen und es wurden zwar auch schon einige Fortschritte gemacht, aber die Führungsspitzen sind in vielen Branchen noch weit entfernt von einer 50/50-Geschlechterparität Mangelnde Chancengleichheit bleibt ein reales Problem für Frauen, ganz speziell im Tech-Bereich

Visual Studio 2019 v169 und v1610 Preview 1 erschienen

Nach drei Previews steht nun Visual Studio 2019 Version 169 bereit und landet bei unseren Highlights auf Platz 9 In der aktuellen Version gibt es neue Features für IntelliSense, NET-Produktivität, Windows Subsystem for Linux 2 und mehr Auch die ersten neuen Funktionen in v1610 können bereits ausprobiert werden, denn dafür ist Preview 1 erschienen

IT-Recruiting: So finden und behalten Sie Fachkräfte

Einen soliden 8 Rang belegt das Thema IT-Security: Cyber-Security, App- und Software-Entwicklung sowie Datenschutz haben immens an Bedeutung gewonnen Daher ist es umso wichtiger, dass Unternehmen wissen, wie sie die begehrten IT-ExpertInnen für sich gewinnen können Worauf kommt es an? Was macht ein Jobangebot attraktiv? Und vor allem: Wie sticht man aus der Masse heraus?

Hackerangriffe nehmen zu: Ist Open Source eine Lösung?

Den verflixten siebten Platz belegt der Artikel über IT-Security und Open Source: In einem Bericht zur IT-Sicherheit in Deutschland hat das Bundesamt für Sicherheit in der Informationstechnik BSI Ende 2020 alarmierende Zahlen veröffentlicht: Jeden Tag werden rund 320000 Varianten von Schadprogrammen in Umlauf gebracht Diese Zunahme an Cyberkriminalität betrifft jedoch nicht nur die Bundesrepublik, sondern ist ein weltweites Problem Die Hacker lassen sich dabei immer raffiniertere Methoden einfallen, um an den herkömmlichen Sicherheitsvorkehrungen vorbeizukommen Ein wichtiges Mittel, um diesen Kriminellen das Leben schwer zu machen wird aber noch oft vernachlässigt: Open Source

Workflows mit eigenen Angular Schematics automatisieren

Angular Schematics sind eine große Hilfe bei der Arbeit mit dem Framework und erhalten deswegen zu Recht den 6 Rang Was macht man aber, wenn es kein vorgefertigtes Schematic für den eigenen Bedarf gibt? Erin Zimmer zeigt in diesem Talk von der International JavaScript Conference, wie man eigene Schematics erstellt

Visual Studio Code Februar 2021: Support für Apple Silicon eingeführt

Das Februar-Update von Visual Studio Code steht zum Download bereit und erreicht damit Position 5 Neu in dieser Version ist, dass VS Code nun nativ mit Apple Silicon kompatibel ist Aber auch darüber hinaus ist v154 natürlich wieder voller spannender Neuerungen

Women in Tech: ?Wir kennen unseren Wert und das sollte unser Arbeitgeber auch?

Der undankbare 4 Platz geht diesen Monat an unsere ?Women in Tech?, Diana Blaum Sie ist Growth Lead für den Remote Campus bei Ironhack

Flutter 2 mit PWA-Support für Desktop-Apps veröffentlicht

Der Bronzerang geht an Flutter 20 Die neue Version des Frameworks von Google bringt eine radikale Änderung mit: Bislang war Flutter ausschließlich für die Entwicklung mobiler Apps gedacht, jetzt können damit auch PWAs und Single Page Applications fürs Web erstellt werden

IT-Gehalt 2021 in Deutschland: Report zeigt großen Gender Pay Gap in Frankfurt

Ebenfalls auf dem Treppchen steht der Beitrag zum IT-Gehaltsreport: Welches Gehalt können IT-Profis in Deutschland erwarten? Dieser Frage ist Honeypot im neuen Developer Salaries 2021 Report nachgegangen Die Daten zeigen, dass nicht nur der Tätigkeitsschwerpunkt eine Rolle spielt, sondern auch der Wohnort wichtig fürs Einkommen ist Das Geschlecht von Bewerberinnen scheint sich jedoch ebenso auszuwirken

NET 6 Preview 2: Neues von NET MAUI

Der Siegerpokal geht im März an unseren Beitrag über NET 6: Die zweite Preview für das Cross-Platform-Framework NET 6 ist erschienen Darin wurde unter anderem Wert auf die mobile Entwicklung mithilfe von NET Multi-platform App UI, kurz NET MAUI, gelegt

Der Beitrag NET 6, IT-Gehälter und Flutter 2 – Unsere Highlights im März ist auf entwicklerde erschienen


Wer bin ich? Was darf ich? Authentifizierung und Autorisierung in Symfony (06.04.2021 12:00:50)

Ein geschützter Bereich für eingeloggte Nutzer lässt sich mit Symfony schnell erstellen Das Maker Bundle hilft bei der Generierung des benötigten Codes Dieser lässt sich problemlos an die eigenen Bedürfnisse anpassen

Der Beitrag Wer bin ich? Was darf ich? Authentifizierung und Autorisierung in Symfony ist auf entwicklerde erschienen


Nebenbuhler: Erste Schritte mit Quarkus und MicroProfile (02.04.2021 12:00:29)

Quarkus hat aus unterschiedlichen Gründen große Aufmerksamkeit auf sich gezogen Es verbindet technologische Innovation und spannende Features mit hoher Produktivität für Entwickler Gleichzeitig bietet es weitreichende Kompatibilität mit gängigen Lösungen, die Entwicklern seit Langem vertraut sind Insbesondere bietet Quarkus die Möglichkeit, zeitgemäße Anwendungen für den Betrieb in der Cloud auf Basis von JAX-RS, CDI und Hibernate zu entwickeln, ergänzt um die Features des MicroProfile Somit eröffnet es für Unternehmen mit Java-EE-Historie einen möglichen Pfad in die Zukunft Wächst hier ein ernstzunehmender Konkurrent für Spring Boot heran?

Der Beitrag Nebenbuhler: Erste Schritte mit Quarkus und MicroProfile ist auf entwicklerde erschienen


Diese Seite wurde in 0.181544 Sekunden geladen