|
|
|
|
Perfekter Post für die neue Seite!
|
|
|
|
|
|
|
Ich hab ma 'ne kurze Frage:
Wie mache ich das, das wenn man mit einem Mobiltelefon o.Ä. auf meine Seite geht, die Seite automatisch in der mobilen Version angezeigt wird? Also die mobil umzugestalten ist kien Problem, aber wie er das erkennt weiß ich nicht. Vielleicht kann mir jemand kurz nen Denkanstoß geben, Rest kann ich dann wohl googeln.
|
|
|
|
|
|
|
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
|
|
|
|
|
|
|
French Press hab ich, ist super Theoretisch müsste hier auch noch irgendwo eine Kaffeemühle rumstehen. Aber ich benutz die French Press so selten, weil mein Kaffeekonsum doch nicht so hoch ist dass sich das lohnt...
|
|
|
|
|
|
|
| Zitat von Tigerkatze
Ich hab ma 'ne kurze Frage:
Wie mache ich das, das wenn man mit einem Mobiltelefon o.Ä. auf meine Seite geht, die Seite automatisch in der mobilen Version angezeigt wird? Also die mobil umzugestalten ist kien Problem, aber wie er das erkennt weiß ich nicht. Vielleicht kann mir jemand kurz nen Denkanstoß geben, Rest kann ich dann wohl googeln.
| |
Ueber den vom Browser gelieferten User Agent (einen Identifikationsstring, der dir sagt, welcher Browser, welche Version, welche Plattform dein Besucher einsetzt).
|
|
|
|
|
|
|
| Zitat von igor]2
| Zitat von Tigerkatze
Ich hab ma 'ne kurze Frage:
Wie mache ich das, das wenn man mit einem Mobiltelefon o.Ä. auf meine Seite geht, die Seite automatisch in der mobilen Version angezeigt wird? Also die mobil umzugestalten ist kien Problem, aber wie er das erkennt weiß ich nicht. Vielleicht kann mir jemand kurz nen Denkanstoß geben, Rest kann ich dann wohl googeln.
| |
Ueber den vom Browser gelieferten User Agent (einen Identifikationsstring, der dir sagt, welcher Browser, welche Version, welche Plattform dein Besucher einsetzt).
| |
Da gibt es ganz sicher auch schon fertige Methoden für. Ansonsten sind hier ein paar user-agents eingetragen: http://en.wikipedia.org/wiki/List_of_user_agents_for_mobile_phones
|
|
|
|
|
|
|
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
|
|
|
|
|
|
|
| Zitat von [DK]Peacemaker
Testweise mal implementiert. Probiers aus.
| |
|
Code: |
[||]
[*]
<Document xmlns="urn:modsde.markup">
<Table>
<TableRow>
<TableCell>
<List>
<ListItem />
</List>
</TableCell>
</TableRow>
</Table>
</Document>
|
|
|
Code: |
[||]
[--]
[*]
<Document xmlns="urn:modsde.markup">
<Table>
<TableRow>
<TableCell />
</TableRow>
<TableRow />
</Table>
<List>
<ListItem />
</List>
</Document> |
|
Irgendwie ein wenig inkonsistent Und wenn man das Verhalten des Forums nachbilden wollte, müsste man nicht erwartete Tags einfach stehenlassen.
[||]
[--]
[*]
|
|
|
|
|
|
|
| Zitat von Klappfallscheibe
| Zitat von [DK]Peacemaker
Testweise mal implementiert. Probiers aus.
| |
|
Code: |
[||]
[*]
<Document xmlns="urn:modsde.markup">
<Table>
<TableRow>
<TableCell>
<List>
<ListItem />
</List>
</TableCell>
</TableRow>
</Table>
</Document>
|
|
|
Code: |
[||]
[--]
[*]
<Document xmlns="urn:modsde.markup">
<Table>
<TableRow>
<TableCell />
</TableRow>
<TableRow />
</Table>
<List>
<ListItem />
</List>
</Document> |
|
Irgendwie ein wenig inkonsistent Und wenn man das Verhalten des Forums nachbilden wollte, müsste man nicht erwartete Tags einfach stehenlassen.
[||]
[--]
[*]
| |
Hmm, also ich hab das ganze ja "entkoppelt", auf der einen Seite interpretiere ich ein "BeginTableCell", welches eine Tabelle und Zeile erstellt, falls keine existiert, auf der anderen Seite hab ich denn Parser, der ein [||] einfach als "BeginTableCell" interpretiert. Damit hatte ich gehofft, den Parser selbst einfacher zu gestalten, weil ich mir über die Position eines Tags keine Gedanken machen möchte.
Was ich tun könnte, wäre vielleicht auf der "BeginTableCell" Seite noch mal eine Möglichkeit einzubauen, dass man sehen kann, was alles geöffnet worden ist. Dann könnte mein "TableCellTokenHandler" einfach nachschauen, ob es Sinn macht, eine Tabelle zu erstellen und wenn nicht, die Eingabe ungeparsed zurückgeben.
|
|
|
|
|
|
|
Wir werden alt. Damals haben wir hier über Bier diskutiert und uns gegenseitig zugeprostet, nun diskutiert ihr über Kaffeemühlen und Kaffee per se.
|
|
|
|
|
|
|
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
| |
Ich dachte da bein der Mpühle eigentlich eher an was günstigeres
http://www.delonghi.com/at_de/products/kg40/
|
|
|
|
|
|
|
| Zitat von [DK]Peacemaker
Hmm, also ich hab das ganze ja "entkoppelt", auf der einen Seite interpretiere ich ein "BeginTableCell", welches eine Tabelle und Zeile erstellt, falls keine existiert, auf der anderen Seite hab ich denn Parser, der ein [||] einfach als "BeginTableCell" interpretiert. Damit hatte ich gehofft, den Parser selbst einfacher zu gestalten, weil ich mir über die Position eines Tags keine Gedanken machen möchte.
Was ich tun könnte, wäre vielleicht auf der "BeginTableCell" Seite noch mal eine Möglichkeit einzubauen, dass man sehen kann, was alles geöffnet worden ist. Dann könnte mein "TableCellTokenHandler" einfach nachschauen, ob es Sinn macht, eine Tabelle zu erstellen und wenn nicht, die Eingabe ungeparsed zurückgeben.
| |
Es macht für diese Tags (||, --, *) doch nie Sinn, eine Tabelle/Liste zu erstellen. Sie sollten nur geparst werden, wenn sie sich innerhalb einer offenen Tabelle/Liste befinden.
Btw.:
|
Code: |
[c0de][b]fett[/b][/c0de]123
<Document xmlns="urn:modsde.markup" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Code Language="{x:Null}">[b]fett[/b][/c0de]123</Code>
</Document> |
|
Wie wärs mit Test-Cases? Dann fallen solche vermeintlich reparierten Dinge auch besser auf
|
|
|
|
|
|
|
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
| |
Ich dachte da bein der Mpühle eigentlich eher an was günstigeres
http://www.delonghi.com/at_de/products/kg40/
| |
Schlagwerk? Bist du jeck? Wenn ich sagte, dass "die Mahlqualität nicht ganz so wichtig ist", meinte ich damit nicht "ganz und gar unterirdisch". Wenn es elektrisch sein soll, nimm halt so was. Hauptsache du hast ein Mahlwerk.
|
|
|
|
|
|
|
| Zitat von Klappfallscheibe
| Zitat von [DK]Peacemaker
Hmm, also ich hab das ganze ja "entkoppelt", auf der einen Seite interpretiere ich ein "BeginTableCell", welches eine Tabelle und Zeile erstellt, falls keine existiert, auf der anderen Seite hab ich denn Parser, der ein [||] einfach als "BeginTableCell" interpretiert. Damit hatte ich gehofft, den Parser selbst einfacher zu gestalten, weil ich mir über die Position eines Tags keine Gedanken machen möchte.
Was ich tun könnte, wäre vielleicht auf der "BeginTableCell" Seite noch mal eine Möglichkeit einzubauen, dass man sehen kann, was alles geöffnet worden ist. Dann könnte mein "TableCellTokenHandler" einfach nachschauen, ob es Sinn macht, eine Tabelle zu erstellen und wenn nicht, die Eingabe ungeparsed zurückgeben.
| |
Es macht für diese Tags (||, --, *) doch nie Sinn, eine Tabelle/Liste zu erstellen. Sie sollten nur geparst werden, wenn sie sich innerhalb einer offenen Tabelle/Liste befinden.
Btw.:
|
Code: |
[c0de][b]fett[/b][/c0de]123
<Document xmlns="urn:modsde.markup" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Code Language="{x:Null}">[b]fett[/b][/c0de]123</Code>
</Document> |
|
Wie wärs mit Test-Cases? Dann fallen solche vermeintlich reparierten Dinge auch besser auf
| |
Regression Test, Regression Test!
|
|
|
|
|
|
|
Nein was geil. Ich lese gerade von der Coppola Restauration vom Paten und just wo ich das bei Google eintippe, geht die richtige Musik dazu an.
|
|
|
|
|
|
|
| Zitat von [Dicope]
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
| |
Ich dachte da bein der Mpühle eigentlich eher an was günstigeres
http://www.delonghi.com/at_de/products/kg40/
| |
Schlagwerk? Bist du jeck? Wenn ich sagte, dass "die Mahlqualität nicht ganz so wichtig ist", meinte ich damit nicht "ganz und gar unterirdisch". Wenn es elektrisch sein soll, nimm halt so was. Hauptsache du hast ein Mahlwerk.
| |
Oh, darauf hätte ich gar nicht beachtet. Gegen Handarbeit hätte ich ja auch nix einzuwenden. Wie lange muss man denn da so kurbeln?
|
|
|
|
|
|
|
Also Tests hab ich schon, aber in dem Fall ist das "]" vom "[/b]" ein Problem, welches ich nicht getestet habe. Wenn man ein Leerzeichen dazwischen macht, ist auch alles korrekt. So erkennt er das [/code] nicht und beendet daher den Code-Block erst beim Abschluss des Dokuments.
|
|
|
|
|
|
|
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
| |
Ich dachte da bein der Mpühle eigentlich eher an was günstigeres
http://www.delonghi.com/at_de/products/kg40/
| |
Schlagwerk? Bist du jeck? Wenn ich sagte, dass "die Mahlqualität nicht ganz so wichtig ist", meinte ich damit nicht "ganz und gar unterirdisch". Wenn es elektrisch sein soll, nimm halt so was. Hauptsache du hast ein Mahlwerk.
| |
Oh, darauf hätte ich gar nicht beachtet. Gegen Handarbeit hätte ich ja auch nix einzuwenden. Wie lange muss man denn da so kurbeln?
| |
Ich meine ich war damals bei knapp einer Minute. Aber das ist eher geraten. Auf jeden Fall gerade so lange, dass es noch Spaß macht.
|
|
|
|
|
|
|
wie mach ich folgendes DRY (java):
input sind eine datei und je optional ein double[] und ein int.
problem: die defaults werden abhängig von der datei berechnet, und der ganze spaß soll auch als methode auf datei und einem oder beiden optionalen parametern funktionieren (nicht nur in der main())
wäre java jetzt gut designed, könnte man named attributes verwenden, aber da das nicht der fall ist, brauch ich 3 funktionen, die alle die dateieinlesefunktion aufrufen, dann aus dem zurückgegebenen array was berechnen, dann einen oder beide defaults berechnen und dann mit beiden gefüllten parametern eine vierte funktion aufrufen, die diese braucht.
oder geht das besser?
code
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von flying sheep am 16.01.2011 16:33]
|
|
|
|
|
|
| Zitat von [Dicope]
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich möchte eine Kaffeemühle und eine French Press. Habe ich so beschlossen
| |
Gute Entscheidung.
Auch wenn bei einer French Press die Mahlqualität nicht ganz so wichtig ist wie beim Espresso, würde ich doch zur Graef CM 80 raten. Hält locker mit den Modellen in der 300-500¤-Klasse mit.
Oder aber eine Handmühle. Es gibt nichts geileres, als sich morgens den Kaffee erstmal mit purer Muskelkraft zu mahlen und den Duft langsam zu riechen. Da krieg ich es aber leider nicht fein genug für Espresso.
| |
Ich dachte da bein der Mpühle eigentlich eher an was günstigeres
http://www.delonghi.com/at_de/products/kg40/
| |
Schlagwerk? Bist du jeck? Wenn ich sagte, dass "die Mahlqualität nicht ganz so wichtig ist", meinte ich damit nicht "ganz und gar unterirdisch". Wenn es elektrisch sein soll, nimm halt so was. Hauptsache du hast ein Mahlwerk.
| |
Oh, darauf hätte ich gar nicht beachtet. Gegen Handarbeit hätte ich ja auch nix einzuwenden. Wie lange muss man denn da so kurbeln?
| |
Ich meine ich war damals bei knapp einer Minute. Aber das ist eher geraten. Auf jeden Fall gerade so lange, dass es noch Spaß macht.
| |
Hmm, ja das wär zeitlich vollkommen okay. Aber ich hab irgendwie das Gefühl, dass die guten handbetriebenen Mühlen nicht großartig günstiger sein werden als gute elektrische Mühlen .
|
|
|
|
|
|
|
| Zitat von flying sheep
wie mach ich folgendes DRY (java):
input sind eine datei und je optional ein double[] und ein int.
problem: die defaults werden abhängig von der datei berechnet, und der ganze spaß soll auch als methode auf datei und einem oder beiden optionalen parametern funktionieren (nicht nur in der main())
wäre java jetzt gut designed, könnte man named attributes verwenden, aber da das nicht der fall ist, brauch ich 3 funktionen, die alle die dateieinlesefunktion aufrufen, dann aus dem zurückgegebenen array was berechnen, dann einen oder beide defaults berechnen und dann mit beiden gefüllten parametern eine vierte funktion aufrufen, die diese braucht.
oder geht das besser?
code
| |
Mein erster Tipp auf den ersten Blick. Verlass dich nicht auf die synchronized Methoden eines Vectors sondern bau bei Mutlithreading eine eigene Logik. Vectoren sind extrem langsam.
Nach dem Abendbrot werde ich mir das mal genauer anschauen falls nicht schon jemand anders eine Lösung vorgeschlagen hat.
PS: Wen willst du eigentlich mit deinem ständigen gehate beeindrucken?
|
|
|
|
|
|
|
| Zitat von flying sheep
wie mach ich folgendes DRY (java):
input sind eine datei und je optional ein double[] und ein int.
problem: die defaults werden abhängig von der datei berechnet, und der ganze spaß soll auch als methode auf datei und einem oder beiden optionalen parametern funktionieren (nicht nur in der main())
wäre java jetzt gut designed, könnte man named attributes verwenden, aber da das nicht der fall ist, brauch ich 3 funktionen, die alle die dateieinlesefunktion aufrufen, dann aus dem zurückgegebenen array was berechnen, dann einen oder beide defaults berechnen und dann mit beiden gefüllten parametern eine vierte funktion aufrufen, die diese braucht.
oder geht das besser?
code
| | Also ich hab nicht so ganz genau verstanden, was du willst, aber so wie ich das verstanden habe, würde ich es so machen:
Als erstes schrieb ich eine innere Klasse, die sich um die Datei-Operationen kümmert und die relevanten Sachen (genes und numTranscripts direkt beim Einlesen, Vector pt dann on-the-fly), zwischenspeichert. Dann sähe das ca. so aus:
|
Code: |
private static Gene[] generateTranscriptome(int G) throws IOException, ExonNotFoundException {
// Datei wäre dann ein Object der genannten Klasse.
return fillTranscriptome(Datei.getGenes(),
Datei.getNumTranscripts(),
G,
Datei.getDenseVector());
} |
|
|
|
|
|
|
|
|
| Zitat von jdo_O Mein erster Tipp auf den ersten Blick. Verlass dich nicht auf die synchronized Methoden eines Vectors sondern bau bei Mutlithreading eine eigene Logik. Vectoren sind extrem langsam. | |
es handelt sich um mahouts mathevektor. und multithreading ist nicht so wichtig, soll nur rennen. aber da ich halt perfektionist bin, kann ich keinen code stehenlassen, der dreimal das gleiche tut.
| Zitat von jdo_O PS: Wen willst du eigentlich mit deinem ständigen gehate beeindrucken? | | ich empfinde java, zusammen mit der tatsache, dass ich es aus irgendwelchen gründen immer wieder nutzen muss, als einen fluch, und betone das, um mich selbst zu beruhigen, und anderen zu zeigen, dass ich nicht an einem tag gegen java wettere und es am anderen fröhlich und freiwillig nutze.
|
|
|
|
|
|
|
kommt nur leider als ziemliche Klugscheisserei rüber.
|
|
|
|
|
|
|
| Zitat von GarlandGreene
kommt nur leider als ziemliche Klugscheisserei rüber.
| |
Ah, Mr. Sugar Coat.
|
|
|
|
|
|
|
ich sag ja nicht, daß er einer ist. Aber es wirkt halt ziemlich fefeig.
|
|
|
|
|
|
|
| Zitat von GarlandGreene
ich sag ja nicht, daß er einer ist. Aber es wirkt halt ziemlich fefeig.
| |
jetzt wird er aber beleidigend.
|
|
|
|
|
|
|
Boah habe ich einen Hunger. Ich werde euch alle vernaschen.
|
|
|
|
|
|
|
| Zitat von cms [b]Also ich hab nicht so ganz genau verstanden, was du willst, aber so wie ich das verstanden habe, würde ich es so machen:
Als erstes schrieb ich eine innere Klasse, die sich um die Datei-Operationen kümmert und die relevanten Sachen (genes und numTranscripts direkt beim Einlesen, Vector pt dann on-the-fly), zwischenspeichert. | |
Find ich gut, mach ich so.
Urgs, ist es ungewohnt, den Gehirnsalat auf nem anderen Monitor zu haben als dem, unter dem die Tastatur angebracht ist. (Hab mal mamas alten 1st-generation-tft ausm keller geholt)
|
|
|
|
|
|
|
| Zitat von GarlandGreene ich sag ja nicht, daß er einer ist. Aber es wirkt halt ziemlich fefeig. | | doch, ich bin schon ein klugscheißer beizeiten. aber das hier ist eher frustration gewesen.
|
|
|
|
|
|
Thema: Gehirnsalat ( wir unter uns ) |