Scacco matto ai temi wordpress in 1456 mosse, istruzioni per l’uso

web developer umbria

Alla fine del post https://umbriawayinfo.wordpress.com/2019/04/14/dare-scacco-matto-ai-temi-wordpress-in-425-mosse-istruzioni-per-luso/ ci eravamo lasciati con la mossa numero quindici, qui riprendiamo la stessa mossa per analizzare il loop, ciclo while che è tutta l’essenza di WP grazie alla sua capacità di far ciclare i dati:

/*

“>

Articolo creato da |

<?php endif; ?>

<p><?php the_excerpt(); ?></p>

<a class=”btn” href=”<?php the_permalink(); ?>”>Leggi tutto…</a>

</article>

<?php endwhile; ?>

<?php else : ?>

<?php echo wpautop(‘ops…non ho trovato articoli!’); ?>

<?php endif; ?>
*/

li abbiamo i post? Usiamo questa funzione: have_posts();
se li abbiamo visualizzami gli articoli uno per uno con la funzione the_post();
se non abbiamo post avvisami che c’è qualcosa di stonato con la funzione wpautop(); Un post ha tutta una serie di informazioni a corredo: chi è l’autore? Quando è stato creato? Di che titolo stiamo parlando? Che icona abbiamo usato per mostrare l’anteprima? Che cosa tagghiamo per i filtraggi sulla ricerca? Quale è il contenuto di un post? Il meccanismo che dobbiamo creare è quello di una pagina che mostra tutte le news dove ciascuna news ha un tiolo cliccabile che riporta sulla singola pagina. Da notare che l’uso di funzioni come the_title() o the_author() sono molto intuitive sull’ uso che se ne fanno, come per esempio la funzione che mostra i contenuti molto intuitiva: the_content() che amdremo a sostituire nella nella versione definitiva con la funzione the_excerpt() che estrapola solo un estratto e non tutto l’articolo che ha una lunghezza variabile. La funzione the_permalink() serve a creare il link. La funzione the_time(‘d F Y’); serve per settare la data di creazione dell’ articolo.

A questo punto siamo pronti per la mossa numero sedici, si includono delle parti nella index in modo da semplificare la gestione. Si dice SPLITTARE!

Quindi la mossa numero sedici sta nel creare il file header.php dove scriverò la parte rispettiva che taglierò dalla index:

/*

<!DOCTYPE html>

<html>

<head>

<meta charset=”<?php bloginfo(‘charset’); ?>”>

<title>
<?php bloginfo(‘name’); ?></title>

<?php wp_head(); ?>

</head>

<body>

<header>

</header>

<nav class=”menu”>

‘primary’
);
?>

</nav>

*/

ovviamente nella index.php in corrispondenza del codice tagliato sopra finito nell’ header dovrò fare una inclusione di pagina con

/*
<?php get_header(); ?>
*/

come prima riga del codice

Mossa numero 17, fare lo stesso processo con il file footer.php da creare tagliando la parte corrispondente dalla index:

/*

<footer>

© –

</footer>

<?php wp_footer(); ?>

*/

web developer UmbriaCi state prendendo gusto con gli smembramenti eh?! Ma la risposta alla domanda mossa numero 18 che è come includo lo stile, quale é? Parliamo dello style.css che va collegato, allora non ci resta che creare il nostro file function, dove andremo ad aggiungere il css dove diventa molto importante l’istruzione add_action:

 

/*
function smart_files(){

wp_enqueue_style(‘google_font’ , ‘//fonts.googleapis.co/css?family=Montserrat:400,700’);

wp_enqueue_style(‘smart_style’ , get_stylesheet_uri(), NULL , microtime());

}

add_action(‘wp_enqueue_scripts’ , ‘smart_files’);

*/

ovviamente il foglio stile dovrà contenere qualcosa al suo interno:

/*
body{

background-color: #ddd;

font-family: Montserrat, sans-serif;

}

h3{
color: #3f51b5;
}

.img-post img{

width: 100%;
height: auto;

}

.menu{

background-color: #203563;

color: #fff;
padding: 5px;

}

.menu li{

list-style: none;

float: left;

padding-right: 20px;

}

.menu a{

color: #fff;

text-decoration: none;

}

.container{

width: 85%;

margin: 0 auto;

overflow: auto;

}

.content{

float: left;

width: 60%;

}

.widget{

float: right;

width: 40%;

}

.clear{

clear: both;

}

.main-sidebar{

border: 1px #203563 solid;

padding: 10px;

margin: 15px 0;

}

.main-sidebar li{

list-style: none;

line-height: 30px;

}

.main-sidebar a{

text-decoration: none;

}

footer{

background-color: #203563;

text-align: center;

color: #fff;

margin-top: 20px;

}
*/

 

Annunci

PHP versione sette: introdotte nuove direttive per trasformare il linguaggio in fortemente tipicizzato

javascript-umbriaDopo aver fatto alta filosofia socratica sui paradigmi della oop all’ indirizzo https://umbriawayinfo.wordpress.com/2019/04/07/programmazione-procedurale-oppure-oop-this-is-the-problem/ e visto come si definisce una classe come si istanzia e si tira fuori dalla definizione della classe un oggetto concreto con la parola chiave new, come si setta e inizializza una variabile interna o proprietà con un ambito di visibilità public, come si modifica in corsa la stessa variabile con la parola chiave this che fa riferimento all’ oggetto corrente e come si crea un metodo o una azione fisica che riguarda l’oggetto per esempio messa in moto per l’oggetto auto, stampa nome autore per l’oggetto libro o cambia numero di telefono per l’oggetto cliente c he avrà una sua angrafica passiamo a fare delle ocnsiderazioni sul tipo dei dati. Essendo php un linguaggio non tipicizzato ciò non toglie che per problemi complessi e progetti enterprise debba aiutare il mio team di sviluppo specificando le variabili. vediamo nello specifico il modello da applicare per i nostri parametri (par) ossia:

function nome (TIPO par, TIPO par) {

con una applicazione pratica con la classica notazione camel sense ossia:

function setNome (string $Nome) {

in questo nome indicherò che quella variabile di ingresso chiamata $name ha una caratteristica di stringa e utilizzando i due punti dico anche quale tipologia di dato la funzione mi dovrà restituire ad esempio:

function leggoTitolo (string $Titolo): string {

con php versione sette sono state introdotte sia per i parametri di ingresso per quello in uscita delle nuove direttive per trasformare il tutto fortemente tipicizzato, caratteristiche simili e più vicine da sempre a linguaggi come C# o Java.

Seconda del match mondiale condominiale vs homunculus1, dopo io pensa ma qui posizio persa Micko! Philidor defence

[Site “Chess.com”]
[Date “2019.01.15”]
[Round “2”]
[White “homunculus1”]
[Black “enricof8”]
[Result “1-0”]
[ECO “A04”]
[WhiteElo “1965”]
[BlackElo “1794”]
[EndDate “2019.01.15”]

Dopo l’esordio vittorioso del bianco nel match che é stato ribattezzato del secolo condominiale, partita https://umbriawaydeveloper.wordpress.com/2019/01/19/il-match-del-secolo-per-il-titolo-di-campione-condominiale-globale-interplanetario-prima-del-match-huebsch-gambit-faraoni-enrico-vs-homunculus1-0-1/, il GM di strada del drosso forte del suo repertorio di aperture, decide di evitare g5 del nero in maniera radicale, ma essendo un match serio verrebbe da dire chi é quel matto che giocherebbe la basman-grob di nero quando in palio ce sta la coppa mondiale condominiale?

1.Nf3 f5 2.d3 d6 3.e4 e5 4.Nc3 Nf6 5.exf5 Bxf5 6.d4

6..e4 7.Nh4!

queste mosse laterali hanno sempre un certo fascino perché non risolvendo una cippa dei problemi nella lotta per il centro, spesso però provocano delle situazioni fastidiose, come in questo caso, dove il bianco sta lavorando per fare un trucchetto noto alla teoria, che ovviamente riesce, grazie agli spifferi della diagonale h5-e8!

7..Bd7 8.Bc4! NT

strano che secondo questa mossa siamo all’ esordio di una novità teorica al fulmicotone, del resto però Ad7 é una alternativa giocata poco rispetto alle principali Ag4(Dd7/Ae6

8..d5?? (+0.90 → +2.06)

si imponeva 8…c6 9.d5 Be7 10.O-O e il bianco in questa linea dovrebbe avere chiaro vantaggio, non é facile perché un GM del calibro del nero sia incappato in questo grave errore. Era al bagno a lavarsi i denti e gli é scappata la giocata? Ha messo in pratica uno dei suoi famosi aforismi, prima muovi e poi pensa? Dopo io pensa ma qui posizio persa Micko! Tecnicamente il nero pensa di speculare sulla posizione indifesa del Ch4 ma invece cade vittima di un trucchetto scolastico

9.Nxd5 Nc6 

solo ora il nero si avvede che non può ricatturare, ah, ah!

10.Bg5 Be7 (+5.18 → +9.74)

si imponeva h5 che ovviamente fa ribrezzo

11.Nxf6+ Bxf6 12.Qh5+ Ke7 (+13.96 → ♔ Mate in 8)

Mistake. The best move was 12… g6 13.Nxg6 Bf5 14.Nxh8+ Kd7 15.Qf7+ Qe7 16.Bxf6 17.Nxf7 e sembrerebbe che stia meglio il bianco (ha, ha)

13.Qf7+

1-0

seguono veloci matti con il pattern che prevede Af4 e anche 000

conclusioni: nessuno aveva mai perso con una miniatura con il GM di strada del drosso, un metodo migliore per accorciare le distanze nel match che ora acquisisce un punteggio roboante (2-0), potrebbe essere quello di mettere in pratica un altro aforisma dell’ agonista condominiale: “prima io pensa e poi muovo Micko!”, link per visualizzazione dinamica: https://www.chess.com/daily/game/215748892

CSS per aspiranti programmatori: B – FONT

Dopo aver affrontato un primo approccio ai CSS all’ indirizzo https://umbriawayfocus.wordpress.com/2018/12/12/css-per-aspiranti-programmatori-a-overview/ passiamo adesso ad analizzare i FONT. La proprietà family-font specifica il carattere per un elemento. Esistono due tipi di nomi di famiglia di caratteri:

– famiglia di font: una specifica famiglia di font (come Times New Roman o Arial)
– famiglia generica: un gruppo di famiglie di font con aspetto simile (come Serif o Monospace). HTML:

<code>
<p class=”serif”>
This is a paragraph shown in serif font.
</p>
<p class=”sansserif”>
This is a paragraph shown in sans-serif font.
</p>
<p class=”monospace”>
This is a paragraph shown in monospace font.
</p>
<p class=”cursive”>
This is a paragraph shown in cursive font.
</p>
<p class=”fantasy”>
This is a paragraph shown in fantasy font.
</p>
</code>

CSS:

<code>
p.serif {
font-family: “Times New Roman”, Times, serif;
}
p.sansserif {
font-family: Helvetica, Arial, sans-serif;
}
p.monospace {
font-family: “Courier New”, Courier, monospace;
}
p.cursive {
font-family: Florence, cursive;
}
p.fantasy {
font-family: Blippo, fantasy;
}
</code>

Separa ogni valore con una virgola per indicare che sono alternative. Se il nome di una famiglia di font è più di una parola, deve essere racchiuso tra virgolette: “Times New Roman”. La proprietà della famiglia di caratteri dovrebbe contenere diversi nomi di caratteri come un sistema di “fallback”. Quando si specifica un carattere Web in uno stile CSS, aggiungere più di un nome di carattere, al fine di evitare comportamenti imprevisti. Se il computer client per qualche motivo non ha quello che scegli, proverà il successivo. È buona norma specificare una famiglia di caratteri generica per consentire al browser di selezionare un carattere simile nella famiglia generica, se non sono disponibili altri tipi di carattere.

body {
font-family: Arial, “Helvetica Neue”, Helvetica, sans-serif;
}

Se il browser non supporta il carattere Arial, prova i successivi caratteri (Helvetica Neue, quindi Helvetica). Se il browser non ne ha nessuno, proverà il generico sans-serif. Ricordarsi di usare le virgolette se il nome del font è composto da più di una parola. La proprietà font-size imposta la dimensione di un font. Un modo per impostare la dimensione dei caratteri sul Web consiste nell’utilizzare le parole chiave. Ad esempio xx-small, small, medium, large, large, ecc.

L’HTML:

<code>
<p class=”small”>
Paragraph text set to be small
</p>
<p class=”medium”>
Paragraph text set to be medium
</p>
<p class=”large”>
Paragraph text set to be large
</p>
<p class=”xlarge”>
Paragraph text set to be very large
</p>
</code>

CSS:

<code>
p.small {
font-size: small;
}
p.medium {
font-size: medium;
}
p.large {
font-size: large;
}
p.xlarge {
font-size: x-large;
}
</code>

Le parole chiave sono utili se non si desidera che l’utente sia in grado di aumentare la dimensione del carattere perché influirà negativamente sull’aspetto del proprio sito. Puoi anche usare valori numerici in pixel o em per manipolare la dimensione del carattere. L’impostazione della dimensione del carattere in valori di pixel (px) è una buona scelta quando hai bisogno di precisione dei pixel e ti dà il pieno controllo sulle dimensioni del testo. L’unità di dimensioni em è un altro modo per impostare la dimensione del carattere (em è un’unità di dimensioni relative). Permette a tutti i principali browser di ridimensionare il testo. Se non hai impostato la dimensione del carattere in alcun punto della pagina, allora è la dimensione predefinita del browser, che è 16px.

Per calcolare la dimensione em, basta usare la seguente formula: em = pixels / 16 ; per esempio:

<code>
h1 {
font-size: 20px;
}
</code>

<code>
h1 {
font-size: 1.25em;
}
</code>

Entrambi gli esempi produrranno lo stesso risultato nel browser, perché 20/16 = 1.25em. Prova diverse combinazioni di dimensioni del testo e zoom della pagina in una varietà di browser per assicurarti che il testo rimanga leggibile. La proprietà stile font viene in genere utilizzata per specificare il testo in corsivo.

HTML:

<code>
<p class=”italic”>This is a paragraph in italic style.</p>
</code>

CSS:

<code>
p.italic {
font-style: italic;
}
</code>

La proprietà in stile font ha tre valori: normale, corsivo e obliquo. Oblique è molto simile al corsivo, ma meno supportato.

HTML:

<code>
<p class=”normal”>This paragraph is normal.</p>
<p class=”italic”>This paragraph is italic.</p>
<p class=”oblique”>This paragraph is oblique.</p>
</code>

CSS:

<code>
p.normal {
font-style: normal;
}
p.italic {
font-style: italic;
}
p.oblique {
font-style: oblique;
}
</code>

Il tag HTML <i> produrrà esattamente lo stesso risultato dello stile di carattere corsivo. Il peso del carattere controlla l’audacia o lo spessore del testo. I valori possono essere impostati come normali (dimensione predefinita), grassetto, più audace e più chiaro.

HTML:

<code>
<p class=”light”>This is a font with a “lighter” weight.</p>
<p class=”bold”>This is a font with a “bold” weight.</p>
<p class=”bolder”>This is a font with a “bolder” weight.</p>
</code>

CSS:

<code>
p.light {
font-weight: lighter;
}
p.bold {
font-weight: bold;
}
p.bolder {
font-weight: bolder;
}
</code>

Puoi anche definire il peso del carattere con un numero compreso tra 100 (sottile) e 900 (spesso), a seconda di quanto vuoi che sia il testo. 400 è lo stesso del normale e 700 è uguale al grassetto.

<code>
<p class=”light”>This is a font with a “lighter” weight.</p>
<p class=”thick”>This is a font with a “bold” weight.</p>
<p class=”thicker”>This is a font with a “700” weight.</p>
</code>

<code>
p.light {
font-weight: lighter;
}
p.thick {
font-weight: bold;
}
p.thicker {
font-weight: 700;
}
</code>

Anche il tag HTML <strong> rende il testo in grassetto. La proprietà CSS font-variant ti consente di convertire il tuo font in maiuscolo. I valori possono essere impostati come normali, small cap ed ereditari.

<code>
<p class=”normal”>Paragraph font variant set to normal.</p>
<p class=”small”>Paragraph font variant set to small-caps.</p>
</code>

<code>
p.normal {
font-variant: normal;
}
p.small {
font-variant: small-caps;
}
</code>

Non tutti i font supportano la variante dei font CSS, quindi assicurati di testare prima di pubblicare. La proprietà color CSS specifica il colore del testo. Un metodo per specificare il colore del testo sta usando un nome di colore: rosso, verde, blu, ecc. Ecco un esempio di modifica del colore del tuo font.

HTML:

<code>
<p class=”example”>The text inside the paragraph is green.</p>
The text outside the paragraph is black (by default).
</code>

CSS:

<code>
p.example {
color: green;
}
</code>

Un altro modo per definire i colori è usare valori esadecimali e RGB. La forma esadecimale è un cancelletto (#) seguito al massimo da 6 valori esadecimali (0-F). RGB definisce i singoli valori per Rosso, Verde e Blu.
Nell’esempio seguente, utilizziamo il valore esadecimale per impostare il colore dell’intestazione su blu e il modulo RGB per rendere il paragrafo rosso.

<code>
<h1>This is a heading</h1>
<p class=”example”>This is a paragraph</p>
</code>

<code>
h1 {
color: #0000FF;
}
p.example {
color: rgb(255,0,0);
}
</code>

Javascript: costruiamo l’applicazione credi in Quelo

Si sa che anche il Manzoni giunto a ridosso della fatidica linea dell’ aldiquà dovette ricredersi sulle sue convinzioni religiose e abdicare per una resa incondizionata per lenire il senso di angoscia e di finitudine, ma allora come si fa a vivere senza credere in qualcosa o in QUELO? Quelo è una divinità satirica frutto della schizofrenia del comico Corrado Guzzanti il cui slogan base troneggia con “la risposta è dentro di te epperò è sbajata!”. Ora ipotizziamo di lavorare alla Nasa e di dover costruire una applicazione per essere sensibilizzati su quelo dove il parametro in ingresso ci viene richiesto a inizio schermata per modellare il calcolo di giorni vissuti senza “quelo”. All’ indirizzo https://www.farwebdesign.com/jsjq-basi/ESERCIZI/esercizio2.html abbiamo una portentosa dimostrazione di questa potentissima applicazione. Ma come funziona la logica di questa interfaccia? Trattasi semplicemente di Javascript e dell’ utilizzo di semplici variabili catturate e modellate con oggetti come il PROMPT e il comando document.write; sostanzialmente viene richiesto all’ utente l’età e questo parametro moltiplicato per il numero di giorni in un anno ci dà il risultato finale . Ma andiamo con ordine e diamo una occhiata al semplice script che naturalmente sarà compreso nei tag omonimi:

var anni = prompt(“Quanti anni hai?”);

var giorni = anni * 365;

document.write(“<CENTER>”+”<H1>” + anni + ” anni sono circa ” + giorni + ” giorni game, Quelo ti aspetta” + “</H1>”)

Si vede subito in ingresso il famoso PROMPT. La sintassi base dell’ oggetto è per l’appunto prompt( domanda , rispostadefault ); e in pratica: prompt(“Come ti chiami?”,”Scrivi qui il tuo nome”); esattamente come viene sopra dove una casella di input cattura il valore di una variabile con una risposta immessa dall’ utente. Una volta catturata la variabile anni non ci resta che creare un’ altra variabile giorni che come risultato finale sarà il tutto moltiplicato per il valore dei giorni anno, ossia 365 e da qui il risultato finale molto approssimativo data la mancanza di una data precisa di nascita. QUELO APPLICATION è dunque quanto mai essenziale per farsi venire addosso una strizza non da poco di fronte all’ inevitabile arrivo del famoso giocatore di scacchi del settimo sigillo.

Linux in 5 mosse, da NC a GM. Mossa 2A: la struttura delle directory

Struttura delle directory in Linux senza segreti e complotti nessuna scia chimica in questo post, quello che vedi é quello che ottieni! Hai mai visto simboli come / o espressioni come /etc o /bin o / home?! Hai bisogno di Champollion? No solo di capire come sono organizzate gerarchicamente le directory nel sistema operativo LINUX. Eppure già qui ci sono delle indicazioni importanti, si possono formulare delle domande dove ci si può rispondere da soli. I file BINari e gli eseguibili in quale cartella finiscono?! E i file di configurazione se la cartella HOME non é altro che la home directories dove vanno (sarà mica la cartella etc per caso)?! E nella cartella /opt che cosa ci va? Il software di terze parti come XAMPP per esempio. La cartella /tmp parla da sola potrebbero essere per caso i file temporanei o una sorta di spazio temporaneo che serve per un reboot? I programmi legati all’ utente vanno tutti organizzati nella cartella /usr. E i log dei file quei dati variabili dove si trovano? In /var! Per avviare un sistema operativo ho necessità di inserire dei file nella cartella /boot. La gestione del cd rom ha una sua cartella edificante che a scanso di equivoci si chiama /cdrom. I file del sisistema operativo per la parte di gestione amministrativa si trovano in /dev e i file condivisi finiscono in /export. Le librerie hanno dei nomi chiari come /lib e /lib64 che si spiegano da soli (anche per i sistemi a 64 byte) e /media hanno a che fare con la gestione della parte multimediale. Nella cartella /mtn si verificano gli assemblaggi di file di sistema esterni mentre in /proc esistono dei processi del fornitore di servizi, in particolari si possono visionare delle informazioni. I sistemi di amministrazione binaria corrono sotto /sbin. Poi ci sono le direttori funzionali identificate con /srv per la gestione dei web services e degli ftp per esempio. I devici si configurano sotto la cartella /sys. Poi ho dei programmi che hanno alla fine le estensioni già viste per esempio sotto la cartella utente, librerie metto un programma che poi ha bisogno di 4 diramazioni, vediamo un esempio: /usr/lib/nomeprogramma/etc, /usr/lib/nomeprogramma/bin, /usr/lib/nomeprogramma/lib, /usr/lib/nomeprogramma/log. Oppure posso avere programmi di terze parti come avg che hanno necessità di organizzare i file nello stesso modo tipo /opt/avg/bin, /opt/avg/lib, /opt/avg/log e /opt/avg/etc. A questo indirizzo troviamo un bel memorandum sulle cose già viste ma anche sulla storia e l’evoluzione del file system: https://it.wikipedia.org/wiki/Filesystem_Hierarchy_Standard.Posso anche trovare delle cartelle annidate, ad esempio OPT posso anche ritrovarmela dentro ETC, il famoso folder per la configurazione dei file. Posso avere anche delle applicazioni specifiche dal nome univoco per esempio opt/google/chrome o opt/google/earth. La struttura più alta della gerarchia o root è rappresentata dallo slash simbolo /. Le applicazioni installate ce le ritroviamo dentro la cartella utente USR o OPT se sono di terze parti ma in generale per entrare nel mondo linux occorre ricordare solo le principali citate all’ inizio come etc, lib, var, home, opt, usr etc. Un veloce ripassino sulle common top level directories anche in english version:

/, “Root,” the top of the file system hierarchy.

/bin, Binaries and other executable programs.

/etc System configuration files.

/home Home directories.

/opt Optional or third party software.

/tmp Temporary space, typically cleared on reboot.

/usr User related programs.

/var Variable data, most notably log files.

Variante Saemish dell’ est indiana: siamo sicuri di dare matto giocando 5 f3!? E se il nero si mettesse a giocare a caccia a Ottobre Rosso? Partita Monge vs Faraoni Enrico torneo Olimpico 2006 Torino

Caccia a Ottobre Rosso (The Hunt for Red October) è un film statunitense del 1990 diretto da John McTiernan, tratto dal romanzo La grande fuga dell’Ottobre Rosso di Tom Clancy. Prodotto appena dopo la caduta del muro di Berlino, è la prima pellicola a portare sul grande schermo il personaggio di Jack Ryan. Ma di chi stiamo parlando traslitterando sugli scacchi agonistici? Proprio lui, l’alfiere C1. Quando il nero riesce a sacrificare una qualità sull’ alfere delle case nere avversario proprio in virtù di questo piccolo impercettibile indebolimento invisibile (anche la diagonale h4-e1 dove a volte ci sono tatticismi legati a Dh4 scacco) anche senza ottener ein cambio neanche un pedone di sicuro qualcosa in cambio salta fuori (iniziativa e prospettive di attacco!). Ma la Saemish quindi ha anche degli inconvenienti? Certamente la casa naturale al Cf3 viene esclusa e il nero può giocarsela su un sensibile vantaggio di sviluppo e soprattutto quando il cavallo bianco del lato di re se ne va a zonzo per il mondo lì esistono dei metodi tattici per cercare l’iniziativa come nella partita Monge vs Faraoni Enrico giocata a Maggio del 2006 al torneo Olimpico a Torino finita molto velocemente dopo l’apertura

1 d4 Cf6 2 c4 g6 3 Cc3 Ag7 4 e4 d6 5 f3

e siamo giunti alla famosa frase del prode Ovidio che disse: adesso ti dò matto!

5..00

con il senno di poi consiglio ai poster (e non ai posteri) un altra linea che é legata ad anticipare l’idea di controgioco giocando prima Cc6 e poi a6 e Tb8 e che può dare luogo a scontri sanguinari

6 Ae3 Cc6 7 Dd2 a6 8 Cge2 Tb8 9 Cg3

9 Cc1 e5 10 d5 Cd4 11 Cce2 potrebbe rientrare in partita

9..e5 10 d5 Cd4 11 Cge2 c5! 12 dc6 bc6!?

Anche 12..Cc6 é giocabilissima e molto tattica, il nero é incurante della debolezza cronica che si ritrova in d6. In cambio del sacrificio del pedone in partita il nero amplifica il sensibile vantaggio di sviluppo e sicuramente lotta per il possesso dell’ iniziativa

13 Cxd4 exd4 14 Axd4 Te8

l’alternativa é limmediata 14..d5 ma il nero come si dice in gergo vuole prima apparecchiare la tavola, seguono adesso due mosse praticamente forzate dopodiché il bianco deve ricucire nel modo giusto

15 Ae2 d5 16 ed5?!

Sembra meglio 16 cxd5 cxd5 17 e5 anche se il nero non ha grossi patemi dopo 17..Cfd7 18 f4 f6!

16..cxd5 17 c5 Tb4! caccia tattica a Ottobre rosso: il nero arde dal desiderio di conquistare le case nere!

Il nero in questa posizione ha un vantaggio e la posizione del bianco é difficile, ad esempio su 18 Af2 il nero prenderebbe l’iniziativa con 18..d4 19 Tad1 Da5 20 Ad4 Tfd8 e il Bianco é nei guai

18 00 Ce4! 19 fe4 Td4 chiaro vantaggio del nero, la caccia a Ottobre Rosso (l’Ac1 del B) si é conclusa con successo e senza sacrificare la qualità, il resto della partita non é interessante seppure forse ci siano delle imprecisioni a parte il fatto che le disgrazie del bianco avvengono alla fine su casa nera (guarda un pò! Sto film su Ottobre Rosso allora ha un suo fondamento?!)

20. Qf4 (20 Dc2!?) f5! 21. Rfd1 (21 Tad1!) 21..dxe4 22. Bc4+ Kh8 23. Qf1 Qc7 24. Kh1 Qxc5 25. Bxa6 Qb6?! (25..Aa6 e 26..Tb4) 26. Bb5?! (26 Db5 chiaro vantaggio del nero) 26..Red8 seguono ora un paio di svarioni 27. Na4?? (27 a4) 27..Qd6?? -+ (27..Dxb5 0-1) 28. Rdc1 Rd2 29. Rab1 Bb7 30. Be2 e3 31. Nc3 Be5 32. Bf3 Rf2 33. Qb5 Bxf3 34. gxf3 Rxh2+ 35. Kg1 Bxc3 0-1

Conclusioni: quando il bianco sceglie la Saemish deve stare contento perché se gioca l’est indiana per complicare tatticamente il gioco ci riuscirà (pensiamo solo al famoso sacrificio moderno di pedone in c5!). E per quanto riguarda il sommergibile del bianco in C1 sulla casa di partenza il nero fin dalla prima mossa cerca tutti i modi possibili per sacrificare un pezzo pesante sopra questo nevralgico alfiere per dominare l’intero mare dove avviene lo scontro, quindi massima attenzione a NON DARE tanto facilmente questo alfiere, pensiamo solo a quelle varianti dove il bianco gioca Alfiere x d4 e guadagnare poi un pedone con Cb5: di solito queste linee hanno un solo verdetto a disposizione che non si discosta da quello che avviene in questa partita. Per la cronaca il film citato é sicuramente da vedere: https://it.wikipedia.org/wiki/Caccia_a_Ottobre_Rosso

Livello 2 di python Basic Data Types: come migliorare tatticamente e vivere felici, una lezione dal GM Hector con novità preparata sull’ attacco Keres, 18 Rb1!

Come faccio a migliorare se non riesco a creare problemi di gioco all’ avversario? Se gli scacchi fossero facili o semplici saremmo tutti GM! Invece gli scacchi sono molto complessi e il compito di un buon giocatore é quello di spingere l’altro lottatore al di là della linea bianca, costringerlo a risolvere problemi concreti sulla scacchiera. Ma Pyton invece é semplice visto ché articolato su un modello a livelli che ricorda il modello OSI? Il primo livello é quello degli oggetti nomi e tipi mentre al secondo livello abbiamo lo strato BASIC DATA TYPES dove si affrontano le spinose questioni dei tipi nnumerici stringhe operatori ed espressioni per valutare delle situazioni. Abbiamo ancora qualcosa prima e per l’esattezza il NONE TYPE che é un oggetto che ha come istanza la dicitura NONE ossia un valore di ritorno da quelle funzioni definite dalla parola chiave def che in assenza di un valore di ritorno per l’appunto restitueranno un NUNN di rito. Un null come tipo di DATO ha una vita propria. Detto questo cerchiamo di capire un attimo se la nostra aspirazione é divenire veri attaccanti di trovare le mosse giuste in queste posizioni critiche con una sorta di test simulato

Dopo 5..d6 del nero quale é la mossa più incisiva a disposizione del bianco se intende creare delle situazioni tattiche?!
_____________________________________________________________________________________________

Dopo 13..a6 come leggi la posizione e quale mossa faresti?
__________________________________________________________________________________________

Dopo 16…Dxf2! come prosegue il bianco in maniera incisva?
________________________________________________________________________________________

E dopo 18..d5! come continua l’attacco il bianco?

Andiamo con ordine rispondendo alla prima domanda ci verrebbe da dire che l’attacco Keres come dimostra questa partita, la Hector – Mortensen Danimarca 1990 estrapolata dal libro di Aagard il manuale dell’ attacco, é molto pericoloso. Quindi 6 g4! Rispondendo alla seconda questione cerchiamo di valutare cosa vuole fare il nero, ci fa notare Aagard. Se giocasse arrocco lungo e Ae7 la sua posizione sarebbe solida i punti e5 e h5 del resto sembrano saldamente nelle sue mani invece é proprio qui che arrivano i colpi di ariete decisivi. Dopo 14 h5! il bianco minaccia la fastidiosa h6 che non si può permettere quindi l’unico modo per risolvere é accettare il sacrificio di pedone ma così il re nero rimane al centro della scacchiera e in posizione insicura. Questo crea una situazione di pezzi attivi da parte del bianco dal momenti che la torre a8 del nero é impossibilitata a entrare in gioco! E infine dopo 16..Dxf2! (il punto esclamativo deriva dall’ ereditarietà agonistica del GM Larsen che mangiava sempre tutto e poi andava a star bene restituendo materiale) il bianco apre varchi con la preparata 17 e5! con l’idea di dare la casa e4 al cavallo e dopo 17..Df5 abbiamo la novità del bianco che impedisce Dxg5 e Ah6 18 Rb1 NT 18..d5 19 Tde1! preparata appositamente da Hector per questa partita! Link https://chesstempo.com/gamedb/game/1709604

Come smantellare le difese del re e vivere felici, ovvero ma perché le modalità di attacco MVC sono molto dispendiose come interazione tra le parti?

Framework PHP che lavorano in MVC? E’ pieno il mondo! Ad esempio Laravel, Codeigniter o Simphony o tutta una serie di strutture base minori che lavorano in maniera efficace come php easy mvc scaricabile all’ indirizzo https://github.com/elrod/php-easyMVC. Per la verità ognuno ha le sue codifiche e il suo modo di strutturare file e cartelle ma il principio rimane invariato che é quello che lega il controller alle viste attingendo ai modelli, il tutto per scomporre molecole di programmazione complesse in atomi elementari riutilizzabili in maniera veloce. Un altro esempio di framework di questo tipo é quello che si trova all’ indirizzo http://www.farwebdesign.com/aforismimvc considerato il capostipite dinosauro di una (si spera) fertile evoluzione almeno a livello di comprensione. Tornando a questo framework easy php mvc presentato all’ indirizzo http://nerdangolo.altervista.org/un-framework-mvc-semplicissimo-php-easymvc/ che dire? L’articolo illustra bene il potenziale inerente per cui si rimanda alla lettura specifica. Il modo migliore per capire é smanettarci sopra come avrebbe fatto Leonardo appassionato di anatomia che misteriosamente di notte si calava in orrendi obitori per vedere che cosa c’era dentro a quel tipo particolare di contenitori. Qui fortunatamente abbiamo solo directory e cartelle e ad esempio quello semplice citato prima come MVC base all’ indirizzo http://www.farwebdesign.com/aforismimvc da solo fa già cristonare non poco quando si passa dal procedurale e CMS più sicuri e complessi strutturati con le classi. Qui si ha un router che instrada le richieste secondo un controller e delle azioni che rimandano a modelli e viste, ovviamente le viste sono le pagine che andremo a vedere a video e possono essere provviste di supporto di layout generici immutabili. Insomma puoi prendere dieci programmatori senior PHP e farti fare un CMS a tema per l’assunzione alla NASA e tanto non ne troveresti due progettato uguali come interazioni, convenzioni sintattiche e strutture di file e cartelle! Certo é che un programmatore senza conoscenze di questi enunciati software architetturali (MVC) é come un essere che miagola nel buio, destinato a non fare il salto di qualità sul versante SENIOR! Ma passiamo alle cose sfiziose, sul tema partite di attacco rocambolesche nella pratica di scacchi agonistica. Vediamo questa gemma http://www.chessgames.com/perl/chessgame?gid=1003436 che cosa avrà pensato il nero giocando Da6?! Qualcosa del tipo adesso ho guadagnato materiale ah ah? Invece colpo di scena la partita finisce con un massacro preparato e neanche tanto nascosto. Obiettivo mettere il re a nudo e smantellare tutti i pedoni che ha davanti per lasciarlo in braghe di tela! Niente di più facile visto che sta per arrivare una girandola di sacrifici come Ch6!! e Tf7!! E quindi? A volte non conviene di andare a caccia di materiale ed essere troppo ottimisti. Da notare valutando le opzioni difensive del nero coma tutti i pezzi siano imbottigliati sul lato di donna senza poter intervenire per salvare alcunché! Ma che in questi posto si prendono in considerazione solo procedimenti di attacco sottili? Macché! Una mossa difensiva che meritas menzione é la famosa 31..Ad7!! di Marshall che rovescia improvvisamente le valutazioni di vittoria del bianco. A vederle e prepararle accuratamente mosse così! Partita indirizzo http://www.chessgames.com/perl/chessgame?gid=1094647 dobe Bauer viene tritato soprattutto dal punto di vista psicologico dal momento che il bianco sembrava poterla da sempre spuntare scrivendo il famoso uno sul tabellone! Insomma con social media marketing Umbria non abbiamo ancora risposto alle domande chiave di MVC ossia come si risolvono in pratica i problemi di sviluppo ma ci stiamo girando in cerchio come avvoltoi che hanno avvistato una risorsa importante in perfetto stile Sergio Leone! E per finire citiamo questo interessante link dove approvvigionare i propri studi scacchistici: https://books.google.it/books?id=jvzl3ZC7skIC&pg=PT6&lpg=PT6&dq=portisch+timman+1985&source=bl&ots=o5H2ZuMSVh&sig=MagpGoRcPdcOsvHyo9KHEzeiq2g&hl=it&sa=X&ved=0ahUKEwjKxMHg1tbYAhXNzqQKHeImAMg4ChDoAQgxMAI#v=onepage&q=portisch%20timman%201985&f=false

Leggere un file esterno con PHP e rimanere brasati nel vedere che in alcune partite uno dei due contendenti non si può muovere senza peggiorare la sua posizione: accendiamola con Social Media Marketing Umbria!

social media marketing umbriaNella famosa partita 16 partita del match di Mosca tra Karpov e Kasparov nel 1985 assistiamo a una strategia “cobra asfissiante” davvero esemplare, evidenzia social media marketing Umbria. Il nero regala un pedone in apertura al bianco che accetta il gentile dono sfidando il suo avversario e dicendo: io so agonista bianconero (mi piace dedicarmi alla scacchiera cioé per evitare le solite risse con i lapeschi affezionati alle case bianche sempre in agguato) dimostrami che hai compenso. Alla mossa 21 il nero gioca la stupefacente 21…g5 e il bianco di colpo improvvisamente ci accorgiamo che non può miglioare in nessun modo la posizione senza creare indebolimenti, che stregoneria é mai questa? C’è un cavallo in d3 che sembra una piovra perché rende passive le torri incapaci di cambi sulle colonne E ed C. L’ Af3 é ridicolo sembra quasi un orpello ornamentale tipo capitello dorico o corinzio. I cavalli bianchi sembrano due belle statuine non possono fare nulla ma a che gioco stiamo giocando eh: http://www.chessgames.com/perl/chessgame?gid=1067175 e guarda caso il bianco si mette nella condizione di subire una serie di tatticismi finali nel tentativo di migliorare la sua posizione. Una bella lezione su iniziativa, materiale, spazio tempo e pressing a tutto campo quasi che offfe una situazione di tipo calcistico (dove peraltro gli scacchi hanno moltissime analogie). E ora torniamo alle farneticazioni da web developer di Social Media Marketing Umbria con la questione della lettura di file testo esterni con PHP. All’ indirizzo http://www.farwebdesign.com/php/Example41-readfile.php troviamo un esempio di come si possa leggere un file esterno di tipo testo con uno script PHP. Per questo esempio crea un semplice
file chiamato somefile.txt nello stesso directory in cui viene eseguito lo script.

<?php
$num_bytes = readfile(‘somefile.txt’);
echo “\n\nThe number of bytes read is: $num_bytes\n”;
?>

La funzione readfile () legge il contenuto del file e lo stampa su schermo. Specificare il percorso del file relativo al file corrente con = readfile(‘somefile.txt’); readfile () restituisce il numero di byte che ha letto. È possibile emettere il contenuto della sceneggiatura stessa passando per la sua percorso per readfile ():

<?php
readfile($_SERVER[‘PHP_SELF’]);
?>

In uno dei prossimi articoli con Social Media Marketing Umbria affronteremo la delicaya questione del perché il nostro sistema solare é in pericolo secondo la moderna teoria dei complotti, pardon, continueremo a esplorare il potenziale degli script PHP.