open source, php, db-freies scm für die prospektseite?
<p>eine freundin von mir ist eine architektin, die ihr eigenes unternehmen gründet und eine grundlegende broschüren-website erstellen muss, um für sich selbst zu werben. die seite wird einfach ein paar artikel und bilder von projekten enthalten, an denen sie gearbeitet hat.</p><p>es gibt so viele cms, dass es schwierig ist, eine auswahl zu treffen, aber die folgenden grundvoraussetzungen sind: - open source - ausgereift und mit guter unterstützung - in php, da praktisch jeder hoster php - db- unterstützt kostenlos, um die bereitstellung wirklich einfach zu machen. wenn der scm wirklich eine datenbank für die indizierung benötigt, ist sqlite in ordnung - gute benutzeroberfläche, sodass er artikel und fotos problemlos zu seiner site hinzufügen kann, ohne html/css zu kennen - schöne vorlagen zur auswahl</p><p>danke.</p>
<p>verwenden sie wordpress. es ist in php geschrieben, bietet cms-funktionen und verfügt über ein großes ökosystem an themen und plugins. siehe die liste der <a href="http://wordpress.org/hosting/">empfohlene wordpress hosts</a> .</p><p>für scm unterstützen die meisten guten hosts subversion, git oder beides.</p>
Naja, der Quelltext von frei lizenzierter Software wird üblicherweise in einem Online-Quellcodeverwaltungssystem organisiert. Diese Verwaltungssysteme müssen von irgendjemandem gehostet werden, es gibt aber auch kostenlose Angebote wie SourceForge (Subversion) oder GitHub (git). Und von der dort eingesetzten Software hängt es dann auch mehr oder weniger ab, wie man idealerweise zwecks Beteiligung vorgeht. Bei SourceForge muss der Projekt-Administrator dem SourceForge-Account des Entwicklers Schreibberechtigung einrichten, damit letzterer, nachdem er mittels Subversion die aktuelle Fassung des Codes heruntergeladen und seine Änderungen vorgenommen hat, diese auch wieder ins Online-Repository hochladen kann. Bei GitHub klont man sich gleich den ganzen Code auf den eigenen GitHub-Account ("Fork" genannt), lädt sich mittels git die eigene Online-Kopie lokal herunter, ändert diese, lädt in den eigenen Fork hoch und hinterlegt dem Projekt-Administrator des Originals eine Benachrichtigung, dass dieser doch die Änderungen des Forks in die offizielle Version übernehmen soll. Es empfiehlt sich generell, über die Ticket-Systeme der Projekte die Arbeit an offenen Aufgaben abzusprechen oder für das eigene Anliegen ein neues Ticket zu öffnen, was vor allem bei SourceForge auch darum wichtig ist, um konfligierende Änderungen und das dadurch notwendige Merging möglichst zu vermeiden, sodass die "Bewerbung" bei GitHub-Projekten allgemein einfacher ist, weil man da erstmal unabhängig arbeiten kann.


Bei mir sieht das dann so aus:


<https://github.com/skreutzer>


ist aber nicht gerade als repräsentativ zu betrachten. Es lohnt sich, einen Blick auf diesen [`Blog Post`](http://lostechies.com/jimmybogard/2012/07/20/choosing-an-orm-strategy/) werfen, aber letztendlich werden die Kriterien von Ihnen festgelegt. Sie müssen entscheiden, ob 

* schnelle Entwicklung
* Performance
* Code-zuerst
* DB zuerst

 oder was auch immer Sie suchen und priorisieren Sie die Liste basierend auf, was noch wichtiger ist. Dann verwenden Sie diese Liste, um Ihre Forschung zusammenzustellen. bei uns kommen stets die modernsten technologien zum einsatz. die meisten webanwendungen programmieren wir mit c# und javascript sowie diversen frameworks. darüber hinaus haben wir webanwendungen mit php und mit der programmiersprache typescript auf der basis von node.js entwickelt. das hosting der webanwendung kann unter windows und unter linux erfolgen. eine firmenhomepage bzw. ein shop Sie können verwenden 


```
DbConfiguration.SetConfiguration(new YourDbConfiguration());

```
  Sie können also Ihre Konfiguration verwenden, ohne ein Attribut zu verwenden. 

 Aber wenn ich benutze 


```
public CeDbConfiguration()
{
 SetDefaultConnectionFactory(new SqlCeConnectionFactory(SqlCeProviderServices.ProviderInvariantName,
                                                        @"c:\test",
                                                        @"c:\test\db.sdf"));
SetProviderServices(SqlCeProviderServices.ProviderInvariantName,
                    SqlCeProviderServices.Instance);
}

```
  Um eine SQL CE Factory zu konfigurieren, wird der Pfad *'C: \ test'* ignoriert und ich muss auch Database.DefaultConnectionFactory setzen !! <p>wenn dies meine entwurfsentscheidung wäre, würde ich wahrscheinlich eher eine option c (modifizierte option a) wählen.</p><h3>erstens, warum nicht 'option b':</h3><p>zum einen gefällt mir die klarheit, dass jedes produkt seinen eigenen tisch hat. wenn es sich nur um eine große tabelle mit einem feld zur bestimmung des typs handelt, ist die beziehung nicht so klar.</p><p>zum anderen würde die indizierungsstrategie immer erfordern, dass dieses typfeld aufgelistet wird. da es sich nur um 4 typen handelt, ist die indexkardinalität extrem niedrig (<code>select * from product\_table where type='x'</code> führt im grunde sowieso einen vollständigen tabellenscan durch)</p><h3>option c.</h3><ul> <li>erstellen sie eine übergeordnete tabelle, die nur die spalten enthält, die alle typen gemeinsam nutzen</li> <li>erstellen sie jeden produkttyp als eigene tabelle mit ihren einzelnen spalten, mit einem zusätzlichen: ein link zur übergeordneten tabelle</li> <li>erstellen sie jede 'link'-tabelle: product\_option, model\_option usw. mit links zu den jeweiligen schlüsseln.</li> <li>für diejenigen mit wechselseitigen links (model\_option, option\_model) erstellen sie auch diese tabellen. dies erhöht die klarheit ihrer joins für alle, die sich das ansehen.</li> </ul><p>der nachteil ist die komplexität, sicherzustellen, dass waisen vermieden werden, wenn dinge aktualisiert/gelöscht werden, und zunächst die abfragen zu entwerfen, die diese tabellen verwenden.</p> eine individuell entwickelte webanwendung ist oft preiswerter als eine standardsoftware. ihr vorteil besteht darin, dass sie nur die kosten für die einmalige entwicklung der software investieren müssen. da sie zum eigentümer der software werden, entstehen keine weiteren lizenzkosten und zwar unabhängig von der benutzeranzahl und der dauer der nutzung. weitere informationen finden sie in unserem wiki-beitrag über die kosten einer individualsoftware (<https://www.trinidat.de/software-wiki/individualsoftware-kosten/>). Ich fand das Buch <http://www.amazon.de/HTML-mit-CSS-XHTML-Kopf/dp/3897214539/> sehr anschaulich und auch unterhaltsam geschrieben. Auf jeden Fall Anfänger geeignet.  

Eine VHS Kurs halte ich dafür nicht für so sinnvoll. Einfach weil es so schwierig nicht ist, dass man da ständig jemanden zum nachfragen bräuchte. <p>ich verwende <a href="http://noscript.net/features">noscript</a> , aber liste jede site auf, die ich tatsächlich verwenden möchte.</p><blockquote> <p>wenn sie noscript installieren, werden javascript, java, flash silverlight und möglicherweise andere ausführbare inhalte standardmäßig <em> blockiert </em>. sie können <em> die ausführung von </em> javascript/java/... selektiv auf den websites zulassen, denen sie vertrauen. sie können einer site erlauben, skripte vorübergehend auszuführen, wenn sie nur zufällig oder dauerhaft surfen, wenn sie sie häufig besuchen und ihr wirklich vertrauen. dies bedeutet, dass noscript aus ihren eigenen browsergewohnheiten lernt und nach einer weile im hintergrund verschwindet. wenn sie jedoch auf eine schädliche webseite stoßen, wird es sofort wieder angezeigt, um ihren tag zu retten.</p> <p>wenn sie eine site mit blockierten skripten durchsuchen, wird eine benachrichtigung angezeigt, die der vom popupblocker ausgegebenen ähnelt.<br> sehen sie sich das symbol oder das statusleistensymbol an, um die aktuellen noscript-berechtigungen zu erfahren ...</p> <p><img src="https://i.stack.imgur.com/zfxkv.png" alt="http://noscript.net/noscript/ss0.png" title="noscript tooltip screen shot"></p> </blockquote> ja gibt es, beschäfftige dich mal mit dem thema "linkbuilding" und "seo". natürlich kannst du auch deine webseite via besuchertauschssysteme bewerben, wo du locker die 1.000 besucher pro tag erreichen kannst, aber da sollte man sich die frage stellen was bringt es einem? sieht zwar im counter und in der statistik schön aus, aber das war es auch schon. 1 freiwilliger besucher ist mir persönlich mehrwert als 10.000 besucher die über forcierte traffic-kampagnen auf die webseite gekommen sind.