Laden...
M
marco.b
myCSharp.de - Member
36
Themen
303
Beiträge
Letzte Aktivität
vor 11 Jahren
Dabei seit
07.11.2006
Alter
39
Erstellt vor 11 Jahren

Der Algorithmus DBSCAN wäre vielleicht auch eine Alternative.

Relativ einfach zu implementieren und ist nicht auf kugelförmige Cluster beschränkt. Naive Implementierungen haben eine asymptotisch quadratische Laufzeit, man findet aber auch Implementierungen mit linearer Laufzeit...

Erstellt vor 13 Jahren

Nutze Jade.NET seit einigen Wochen intensiv bei meiner Arbeit. Klasse Tool.
Kriegt man die switch-Anweisungen noch schöner hin? Das ist in der 1.0.0.7 goto-Salat 😃

Erstellt vor 13 Jahren

Meines Erachtens scheitert dieser Zukunftsgedanke bezüglich HTML5/JS als Ersatz für .NET schon im Ansatz. Umso bedauerlicher finde ich es, dass namhafte Autoren der Szene (gemeint ist nicht das verlinkte, sondern beispielsweise Golo Roden) auf diesen Zug mitaufspringen und dazu beitragen, dass sich entsprechende Gerüchte verbreiten.

Die Argumentation von Tielke ist unüberlegt und zielt an jeder Realität vorbei.

Ersteinmal würde dieser Bruch implizit bedeuten, dass Microsoft das Plattformwettrennen mit Oracle verloren hätte. Java wäre somit die einzige Enterprise-fähige Plattform, die für verteilte Geschäftsanwendungen überhaupt rentabel ist (abgesehen von C++, welches aber an sich schwerfälliger ist und aktuelle Trends nur langsam unterstützt).

Wer JavaScript schon programmiert hat, weiß, dass die Sprache für kleine UI-Hacks ganz brauchbar sein mag, aber sich sicher nicht für solide Anwendungsprogrammierung eignet. Die Sprache ist mit C# schlicht nicht auf Augenhöhe. Und das sage ich als jemand, dem JavaScript als Sprache sehr sympathisch ist und der sich schon eingängiger mit deren Grenzen beschäftigt hat.

Wie bereits erwähnt, ist auch das Singularity-Argument einfach vollkommener Quatsch. Microsoft könnte sich diesen Bruch überhaupt nicht erlauben. Der wesentliche und marktsichernde Vorteil von Windows ist nunmal, dass es von jeder Software und von jeder Hardware unterstützt wird. Nicht umsonst schleppt der aktuelle Windows-Kernel eine riesige Packung Altlasten mit sich herum, damit garantiert werden kann, dass Uraltsoftware XY welche irgendeine mittelalterliche API nutzt, noch läuft. Das könnte mit Singularity nicht mehr garantiert werden, ohne erheblichen Zusatzaufwand zu investieren, der jenseits jeder verargumentierbaren Wirtschaftlichkeit liegen würde.

Weiterhin würden sie meines Erachtens die Windows Server Sparte verlieren, denn kein Admin würde ein "Managed OS" für produktionskritische Systeme einsetzen, das noch vor einem Jahr ausschließlich im Elfenbeinturm von Microsoft Research existierte!!
Gerade den Technologieberater und Wissensvermittlern sollte doch sowas einfach nur klar sein. Wie kann man denn solche Argumente unter den Teppich kehren?!

Microsoft setzt auf HTML5, um bei aktuellen Trends mithalten zu können. Insbesondere haben sie auch in der Vergangenheit explizit versprochen, sich künftig an etablierte Standards zu orientieren, statt immer auf Eigentüfteleien zu setzen. Diese offizielle Kundgebung (war sie vor ca. vier Jahren?) wurde damals von allen sehr begrüßt! Sogar die Heise-Trolle waren erstaunt.
Jetzt, wo sie entsprechend HTML5 priorisieren, kommt schon der Aufschrei.
Dabei ist HTML5 doch überhaupt keine Konkurrenz für .NET, ebenso umgekehrt. HTML5 ist das, was heute HTML4 für ASP.NET ist.

Mag sein, dass es sich als Alternative für WPF-XAML etabliert. Aber um XAML zu ersetzen, ist HTML5 wieder nicht umfangreich genug. Es bietet schlicht nicht das, was XAML bietet. Um es auf diesen Stand zu bekommen, müsste Microsoft wieder den Standard aufbohren, was wieder zu proprietärer und somit verpöhnter Erweiterung führen würde.

Und noch zuletzt: Microsoft entwickelt durchaus in .NET. Ihr als Entwickler solltet doch aber wissen, dass ein Mamutprojekt wie Office, welches geschätzte 10 Millionen Zeilen enthält (wenn's reicht), nicht mal ebenso auf .NET zu portieren ist. Zumal Office wiederrum an irgendwelche Windows-COM-Komponenten anbindet, die wiederrum nativ sind.
Ähnlich verhält es sich mit Visual Studio, welches zu Teilen ja schon durchaus auf .NET läuft. Manche Produkte lassen sich auch einfach schlecht in Managed Code schreiben. Niemand von euch will einen Managed SQL-Server. C++ hat in einigen Punkten nunmal noch die Nase vorn und wird nebst .NET immer eine Daseinsberechtigung haben.

Also: lasst euch nicht beeindrucken von Schwarzmalerszenarien, soweit ich das zu berurteilen vermag, ist das alles Käse. 😃

Erstellt vor 13 Jahren

Wenig theoretische Informatiker, wenig Mathematiker! (...) was das Hauptproblem ist, ist Professionalität. Wir wissen ja noch nicht einmal, wie Software zu entwickeln ist. Wie wir es schaffen, dass der Code nicht nach einem Jahr weggeschmissen werden muss.

Und? Wir wissen auch nicht, ob NP != P ist. Software Engineering ist EINE der VIELEN Forschungsfeldern der jungen Wissenschaft Informatik. Die Universitäten haben den Auftrag, Forschungsnachwuchs heranzubilden. Ein Informatikstudium an der Universität ist keine Berufsausbildung. Wer Praxis will, der geht an die FH oder gar BA.
Bloß nicht NOCH weniger theoretische Informatiker. Es gibt genug Praktiker, die nach jedem Satz "und für was soll das jetzt gut sein" fragen müssen, nur weil man in einem Modell ein Quäntchen zu viel abstrahiert hat.

Es ist NICHT Aufgabe der Universität, stabile Software zu erschaffen!!

Arbeiten mit modernen Technologien halten Einzug in den Lehrplan.

Juhu, endlich Wissen, mit dem man in fünf Jahren nichts mehr anfangen kann. Was heute SCRUM ist, ist morgen MURCS.

Echtes Algorithmen-Design machen die Doktoranden/Post-Docs an den Unis oder in den Industrie-Labs der großen Unternehmen.

Wenn du so über dich selbst und deine Wissenschaft denkst, tust du mir leid. Also ich und Informatiker die ich kenne betreiben Algorithmendesign. Wir machen auch stochastische average-case Analysen und beweisen Korrektheit.

Erstellt vor 13 Jahren

Natürlich kann man in eine kleine Firma gehen und sein Leben lang dieselben 0815 Datenbankanwendungen in VB/C# schreiben. Aber es gibt noch weit mehr Einsatzbereiche für Informatiker, und das sind wirklich nicht wenige. Und da braucht man auch viel Theorie aus dem Studium. Ich selber habe schon alles mögliche gebraucht, und ich kenne viele, die z.B. mit Embedded Systemen arbeiten (und das sind vielleicht zahlenmäßig mehr, als Business Anwendungen Entwickler), die auch sehr komplexe Sachen machen und brauchen.

Im Prinzip hast du jetzt ziemlich genau obige Aussage von mir wiederholt, fasst aber im gleichen Post obige Diskussion als off-topic zusammen.

Erstellt vor 13 Jahren

Da werden als Entwickler z.T. nur Mathematiker eingestellt, weil man da eben auch wissen über stoachastische Prozesse zur Vorhersage von Aktienkursen, quadratische Programmierung etc. braucht.

Ist das so? Soweit ich das mitbekommen habe, werden oftmals Informatiker mit Nebenfach Mathematik auch für die knackigeren Posten in der FB eingestellt. Mit entsprechenden Vorlesungspräferenzen steht der Informatiker, NF Mathematik, in diesem Bereich ja auch in nichts nach. Maß-/Integrationstheorie, Stochastik, Optimierung und Analysis II, falls es nicht schon zu den Grundvorlesungen der Informatik gehört. Und ab geht die Post 😃 😉

Erstellt vor 13 Jahren

Hallo gfoidl,

wäre es dir möglich darzulegen, inwiefern obige Diskussion nicht dem ursprünglichen Thema zuträglich ist?
Es wurden Bereiche erörtert, in denen programmiert wird. Aus diesen Bereichen lassen sich Softwarekomplexitäten ableiten, woraus sich wieder Anforderungen an den Programmierer ableiten lassen. Meines Erachtens ist dies sehr wohl Teil der Diskussion.

Erstellt vor 13 Jahren

Wie würdest du dann bestimmen wollen, welchen Marktwert welches Marktsegment hat?

Darum ging es nicht. Zuletzt haben wir doch darüber diskutiert, wo Programmierer zum Einsatz kommen, denn es ging darum, ob man fürs Programmieren studiert haben muss. Doch auch die Sache mit dem Marktwert würde ich anzweifeln wollen.

Ganz allgemein denkst du mir zu ".NET". Du vergisst, wo überall programmiert wird. Zählen wir doch erstmal die Standardgeschichten auf. Da wären zuerst einmal Betriebssysteme. Okay, das sind einige, wenige Anbieter. Darauf aber baut erstmal ein gigantischer Markt von Netzwerk-, Sicherheit- und Middlewaresoftware auf, die zwar oft als Basis für Business-Szenarien verwendet werden, jedoch selbst sicher keine sind. Dann der große Markt der Desktop-Software.
Und wenn wir den Standard-Stack an Anwendersoftware abgeklappert haben, dürfen wir nicht vergessen, wo noch programmiert wird: in der Hardwareentwicklung arbeiten tausende von Firmen an Treibern. Doch darüber hinaus sind in der Welt milliarden von Mikrocontrollern verteilt. Zahnbürsten, Waschmaschinen, Automaten, Regelungssysteme, Autos ... - was glaubst du, wie viele Programmierer alleine an Fahrassistenzsystemen bei namhaften Auto-Herstellern tüfteln? Und hier gibt es einige verdammt komplexe Algorithmen.
Kommen wir zu meiner Branche: dem Maschinenbau. Der Markt an Modellierungssoftware, welcher wirklich mathematisch extrem komplex ist, wollen wir mal außer Acht lassen! Die Steuerungssysteme für ganz spezifische Maschinen lassen sich schlecht standardisieren. Hier arbeiten viele Programmierer im Bereich Aktorik und Sensorik.

Ich kann ganz spontan mindestens zehn Informatiker aufzählen die ich kenne und die an wirklich komplexen Problemen arbeiten und das außerhalb der Uni.
Da wären Anwendungen in Spracherkennung, Data Mining, intelligente Algorithmen für Suchmaschinen, Compilerbau, Bildverarbeitung dabei. Wenn das für dich der einfache IT-Alltag ohne komplexe Algorithmen ist, Hut ab.

Ich habe im Übrigen auch großen Respekt vor der Entwicklung von Business-Anwendungen. Eine stabile, verteilte Architektur die darüber hinaus auch noch wartbar ist, ist keine Trivialität. Es gibt bestimmt viele Fachinformatiker, die hier großartige Arbeit leisten. Und wenn das für dich soweit Routine und Erfahrung ist, dass du das alles als Pille-Palle abtun kannst, ist das doch im Prinzip eine tolle Sache.

Erstellt vor 13 Jahren

Alles detailliert zu zerpflücken führt nun zu weit. Du kannst das gerne machen aber ich mach da nicht mit. Warum muss man immer alles bis ins kleinste Detail definieren, sobald sich jemand direkt betroffen fühlt?

Entschuldige, es hat mich lediglich interessiert, auf was du anspielst. Es hätte eine interessante Diskussion daraus werden können.

Ich habe nur gesagt, das sich die Häufigkeit, wo man dieses Wissen benötigt sehr stark in Grenzen hält.

Okay, die Häufigkeit. Ich habe viel mehr die Anwendbarkeit an sich verstanden, nochmals sorry.

Wow. Das ist 1 Anwendungsfall.
Ich fände es häufig viel besser, wenn die meisten Embedded Entwickler sich an Standards halten würden, die von Frameworks nun mal leichter verwendet werden können.

Wie viele Anwendungsfälle hätte ich bringen müssen, um das "wow" von dir zu unterdrücken?

Nein ist es nicht. Das sieht man auch an den Umsatzzahlen.

Business-Anwendungen sind ein kleiner Teil der IT. Und Umsatzzahlen stehen in keinem direkten Zusammenhang, und außerdem stimmt das mit den Umsatzzahlen auch nicht.

Erstellt vor 13 Jahren

Klar ist es von Vorteil, wenn man sowas schon in der Theorie gelernt hat aber die alltägliche Nützlichkeit hält sich meiner eigenen Erfahrung nach sehr stark in Grenzen.

Da bin ich neugierig. Was verstehst du unter "sowas", und von welchen Studieninhalten denkst du ganz konkret, dass sich der praktische Nutzen in Grenzen hält? Vielleicht kann ich dir den einen oder anderen praktischen Einsatz nennen, an den du nicht gedacht hast.
Es gibt ja nicht nur Business-Anwendungen für Buchungssätze in der IT (überspitzt gesagt).

Ich halte es beispielsweise bei der Embedded-Programmierung durchaus für sehr wichtig zu wissen, dass man einen partiell geordneten Suchbaum mit einer Priority Queue auch effizient in einen Array einbetten kann.

Edit: bin zu blöd zum Zitieren.

ich kenne zur Zeit keine Firma, wo selbst gestandene Dipl. Infs nicht auf Frameworks usw. zugreifen. Wir leben in Businessapplikationen in einer Welt des RAD.

Das Land hinter den Businessapplikationen ist groß - und selbst diese können ziemlich komplex sein. Wenn irgendwelche Business Intelligence-Lösungen Tourenplanung vornehmen, Data Mining betrieben wird, vielleicht sogar mittels neuronaler Netze oder Produktionsfunktionen analytisch untersucht werden, kommst du um ein breites Fundament an Mathematik und Informatik nicht herum.

10 von 303 Beiträgen