Welcome

This is the generic homepage (aka Aggregate Blog) for a Subtext community website. It aggregates posts from every blog installed in this server. To modify this page, edit the default.aspx page in your Subtext installation.

To learn more about the application, check out the Subtext Project Website.

Powered By:

Blog Stats

  • Blogs - 714
  • Posts - 30955
  • Articles - 310
  • Comments - 100812
  • Trackbacks - 603149

Bloggers (posts, last update)

Latest Posts

http://www.domainsbot.com

non sai come chiamare il tuo dominio fatti aiutare da
http://www.domainsbot.com

posted @ 18/04/2014 16.33 by Alessandro Gervasoni

[MYSQL] ricercare il nome di una colonna in tutte le tabelle

SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('columname')         AND TABLE_SCHEMA='dbname'; 

posted @ 18/04/2014 12.53 by Alessandro Gervasoni

Radical: novità

Grandi novità per Radical che grazie al preziosissimo supporto di Micheal ha cambiato casa spostandosi da CodePlex a GitHub: https://github.com/RadicalFx/radical/

Il motivo è complessivamente semplice, è molto più facile gestire la collaborazione, abbiamo migrato i sorgenti, la documentazione esistente e tutti gli issue presenti (aperti).

Ne abbiamo approfittato anche per creare un gruppo su Google che può essere un ottimo modo per continuare il corposo lavoro che abbiamo iniziato con gli web cast: https://groups.google.com/forum/#!forum/radical-mvvm-framework/

.m

posted @ 15/04/2014 11.43 by Mauro Servienti

[OT] mini-mobile-robotic-printer



http://hypebeast.com/tags/zuta-labs

posted @ 14/04/2014 16.45 by Alessandro Gervasoni

Azure Web Sites, edit with Monaco (VS Online)

Se nel vostro Azure Web Sites, nella parte di configurazione abilitate l’editing con Visual Studio Online, codename “Monaco”

image

Vi troverete la possibilità di editare il sito direttamente da una comoda interfaccia web. Dal tab DASHBOARD infatti dovreste ora vedere un apposito link.

image

A questo punto vi verrà chiesta una password e la prima domanda che mi viene fatta è, dove trovo questa password? In particolare se il sito è stato automaticamente creato per il deploy automatico tramite Visual Studio Online, la password è memorizzata nel Publish Profile. Sempre dalla lista precedente, scaricate il Publish profile, apritelo e li troverete la vostra password (che è una lunga stringa)

image

A questo punto potete entrare nell’editor online. L’aspetto SUPER INTERESSANTE è che esiste un apposito tab Git da cui voi potete addirittura creare un repository git remote dove poter lavorare e tenere traccia delle vostre modifiche.

Una volta creato il repository Git potete tranquillamente editare qualsiasi file, come ad esempio il web.config, ed avere anche intellisense (siamo nel browser)

image

Per poi aprire la console, dove potete tranquillamente lavorare con Git all’interno del browser, avete tutti i comandi disponibili.

image

Chiaramente, appena effettuate il commit delle modifiche esse diverranno attive nel web site praticamente in maniera immediata. Ma non è tutto qui, dato che voi avete un repository git praticamente potete fare qualsiasi cosa, ad esempio creare una nuova branch

image

A questo punto potete fare le vostre modifiche su più branch, e decidere quale branch sarà attualmente attiva nel vostro web site semplicemente scegliendo la branch corrispondente. Questo vuol dire che cambiando branch con git checkout voi decidete quale versione del codice è attualmente attiva nel vostro web site. Questo fa capire che Monaco è ben di piu di una semplice interfaccia web per editare file, ma permette una gestione avanzata con git come source control. In questo modo siamo sicuri che anche se facessimo degli errori, possiamo in ogni momento tornare ad una situazione stabile.

Visualizzando il log del repository Git, potete comunque restorare il sito ad uno stato qualsiasi precedente (Attenzione che siete in detatched HEAD se non ci create una branch sopra)

image

Ora chiaramente realizzare un intero sito direttamente online mi sembra quantomeno fantasioso, ma per fare fix veloci, soprattutto se dovete modificare al volo qualche cosa nel web.config, la potenza messa a disposizione è decisamente molta. Avendo a disposizione comunque la console completa di git, penso che sia possibile (non ho ancora voluto provare) a configurare come remote un normale repository Git, ad esempio uno su VSO e poi effettuare il push direttamente dall’interno dell’azure web site.

Gian Maria.

posted @ 09/04/2014 19.20 by Gian Maria Ricci

C# vNext: “out parameter inference”

Attualmente sono veramente rognosi da usare, ma potrebbero diventare:

public class Foo
{
    public static void MyMethod( out Int32 x )
    {
        x = 12;
    }
}

Foo.MyMethod( out var bar );
bar...

Forse potremo dichiarare inline al metodo i tipi in out, sfruttando type inference e avendoli a disposizione nello scope, forse…

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 09/04/2014 11.30 by Mauro Servienti

C# vNext: “declaration expression”

Anche questa è una figata:

public class Foo
{
    public DateTime BornDate{ get; set; }
    public Int32 Age => DateTime.Now.Year - this.BornDate.Year;
}

Lasciamo perdere l’implementazione stupida, ma notiamo piuttosto che Age è una proprietà a tutti gli effetti, è una proprietà in solo get, il cui body invece di essere inutilmente verboso si limita ad una lambda.

Cosa è che la distingue da uno dei tanti tipi di delegato?

  1. il tipo di ritorno;
  2. il dettaglio, poco visibile al primo sguardo, che non ci sono parametri in ingresso alla lambda;

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 03/04/2014 11.23 by Mauro Servienti

Che belle le community

Causa impegni pressanti e mille cose da fare, quest’anno non ho scritto nessun post dopo i Community Days 2014, mea culpa. In generale direi che non è necessario fare nessun post, l’evento è cosi conosciuto e riesce così bene che non vi è nessuna necessità di ribadire quanto sia stato bello parteciparvi, è scontato :).

Però mi sento di ringraziare, seppure tardivamente, tutte le persone che si spendono nell’organizzazione e su tutti Andrea e Daniele che dedicano veramente un quantitativo di tempo mostruoso all’organizzazione. Sapendo quanto tutti noi siamo impegnati è veramente bello vedere che dopo tanti anni ci sono persone che ancora dedicano gran parte del loro tempo libero alle community.

L’aspetto migliore dei Community Days è che, nonostante sia una conferenza con dei numeri paurosi, si respira comunque un aria di Community (con la C maiuscola). Questo a testimonianza che il concetto di Community non è determinato dal numero, ma dallo spirito.

Sabato scorso infatti sono stato speaker all’Alm Day Campania e sebbene i numeri siano sicuramente differenti, il piacere di parteciparvi è comunque stato grandissimo. Vi assicuro che gli eventi community servono a ricaricare le batterie e condividere idee, opinioni, tecnologia (e mangiate). Dicendo questo invito tutti quanti ad essere più attivi, le community hanno bisogno di tutti voi per vivere.

Per cui un grazie a tutte le Community Italiane, piccole e grandi, attive e meno attive, da Sud a Nord; continuate cosi!!

Gian Maria.

posted @ 01/04/2014 9.53 by Gian Maria Ricci

Self-organisation without self-regulation, a recipe for chaos


This post is from the series of posts on Self-Organisation.



First time I experienced an Agile lego game it was playing the Leadership game: we had been asked to form 3 teams and then we had been given a goal to pursue. We worked in time-boxed iterations, and at the end of each iteration we reflected how to become more effective, even with the freedom to move to another team if that could be more useful.


In other words we had been asked to Self-Regulate: team members have early and frequent feedback in order to perceive the connection between actions and the consequences and based on that react and adapt their behaviour and their actions as needed to reach the desired goal.


Self-Regulation is a required element for a well functioning self-organisation. Indeed one of the principles of the Agile Manifesto state:
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

The Lean principle Amplify learning suggests to increase feedback via short feedback sessions to support the continuous improvement, to better understand customers and project's needs, to learn how to better satisfy those needs and so adjust efforts for future improvements accordingly. Kanban is a Lean tool that helps here in many ways.




Why it’s  important to reflect, as individual and as team, at regular intervals?
This is because when our actions have consequences beyond our learning horizon, it becomes impossible to learn from direct experience.

What it means to become more effective?
For a team it means for example getting better in 
  • Completing team projects (i.e. quantity, rate and quality of the outcomes)
  • Fulfilling member needs (i.e. rewardingness from membership or from a member, commitment from members and to members)
  • Processing information and generating meaning (i.e. contribution of information from members, proportion of information held in common or uniquely by single member, proportion of information relevant to the tasks or socio-emotional)
  • Managing conflict and developing consensus (i.e. distribution between task and procedure and interpersonal conflict, expressed versus unexpressed conflict, escalation and de-escalation dynamic, level of implicit and explicit consensus)
  • Maintaining the structure and integrity of the team as a system (i.e. team social and task cohesiveness, patterns of interaction, of influence, of participation and of affect)
  • Motivating, regulating and coordinating member behavior (i.e. behavioral coordination about team norms and about errors and its speed/delay of the feedback)

posted @ 31/03/2014 15.37 by Luca Minudel

C# vNext: “ctor type inference”

Finalmente :-)

class Sample<T>
{
    public Sample( T data )
    {
    }
}

var instance = new Sample( "this type is infered" );

Non saremo più obbligati a dichiarare i tipi generici sui costruttori, rendendo di fatto utili le Tuple :-P

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 31/03/2014 13.16 by Mauro Servienti

C# vNext: “null operator”

Questa invece mi piace un sacco, nonostante purtroppo non sia un’implementazione delle Monad in C#:

public class Foo
{
    public void Evaluate( Person person )
    {
        var number = person?.Addresses?.FirstOrDefault()?.StreetNumber;
    }
}

Se diciamo che, dato che StreetNumber è Int32, il tipo di “number” è Nullable<Int32> il resto direi che è abbastanza ovvio. Ci evita una valanga di noiose e rumorose “if”.

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 27/03/2014 11.10 by Mauro Servienti

EF 6.1 : What’s new (3)

Supporto a “.ToString()” e “String.Concat()”, un esempio:

var queryConcat = from c in db.Vehicles
            where string.Concat(c.EngineSize, c.HP).Equals("1600110")
            select c;

var queryToString = from c in db.Vehicles
            where  c.HP.ToString().Equals("110")
            select c;

 

Abbiamo due Query LINQ che filtrano i dati in base a condizioni su stringhe, la prima “tira fuori” tutti i veicoli dove la concatenazione dei valori delle proprietà “EngineSize” e “HP” è uguale a “1600110”, mentre la seconda esegue un filtro su di un valore intero convertio in stringa. Se proviamo ad eseguire il codice in un ambiente con EF 6.0 otteniamo un’eccezione a runtime in tutti e due i casi:

image

Con EF 6.1 le query sono eseguite correttamente:

image

Cosa succede dietro le quinte:

SELECT 
    [GroupBy1].[A1] AS [C1]
    FROM ( SELECT 
        COUNT(1) AS [A1]
        FROM [DomusDotNet].[Vehicles] AS [Extent1]
        WHERE N'1600110' = (CASE WHEN ([Extent1].[EngineSize] IS NULL) THEN N'' ELSE [Extent1].[EngineSize] END +  CAST( [Extent1].[HP] AS nvarchar(max)))
    )  AS [GroupBy1]

SELECT 
    [GroupBy1].[A1] AS [C1]
    FROM ( SELECT 
        COUNT(1) AS [A1]
        FROM [DomusDotNet].[Vehicles] AS [Extent1]
        WHERE N'110' =  CAST( [Extent1].[HP] AS nvarchar(max))
    )  AS [GroupBy1]

Da analizzare il funzionamento di “String.Concat(…)” con SQL Server 2012 per verificare la conversione in SQL con la funzione “nativa SQL” “Concat”.

posted @ 27/03/2014 9.04 by Pietro Libro

Introduction to CQRS

link articolo

posted @ 26/03/2014 14.18 by Alessandro Gervasoni

C# vNext: “params on IEnumerable”

Questa non mi piace, nel senso che non mi piace la keyword params in generale, sono più le volte che alla lunga mi ha dato problemi piuttosto che vantaggi, comunque:

public ckass Foo
{
    public void Evaluate( params IEnumerable<Whatever> data )
    {

    }
}

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 24/03/2014 10.03 by Mauro Servienti

CLOUD OS - La nuova visione dell'IT a Roma il 31 marzo

Se siete interessati a conoscere meglio la nuova visione Microsoft dell'IT, basata fortemente sul Cloud, vi aspetto Lunedì 31 marzo presso la sede Microsoft di Roma in viale Avignone 10 per vivere insieme l'evento CLOUD OS - La nuova visione dell'IT organizzato da Proge-Software e Microsoft.

Come recita la presentazione dell'evento, "è una nuova era per l'IT. Oggi i dati, le applicazioni ed i dispositivi evolvono ad un ritmo mai visto prima e le nuove sfide introdotte dalle tecnologie Cloud richiedono differenti paradigmi di gestione, efficienza e stabilità dell'IT aziendale.

Il Cloud OS di Microsoft consente di fronteggiare e vincere queste sfide, fornendo gli strumenti necessari ad ottenere tutti i benefici di scalabilità, velocità e agilità, salvaguardando gli investimenti effettuati".

Avrò l'onore di parlare, insieme a Pierpaolo Boccadamo di Microsoft e a Giancarlo D'Antoni – che come me lavora per Proge-Software –per raccontarvi come Realizzare e gestire applicazioni aziendali moderne.

Trovate maggiori informazioni e il link per la registrazione nella pagina dell'evento sul sito di Proge-Software.

L'appuntamento è per le ore 10, non mancate.

Happy coding!

posted @ 22/03/2014 22.54 by Giorgio Di Nardo

EF 6.1 : What’s new (2)

Altra feature introdotta, l’attributo “IndexAttribute” che ci permette di definire un indice su una o piu’ colonne. Ad esempio, per creare un indice (di nome “IX_FreeDailyKm”) sulla proprietà “FreeDailyKm” del nostro modello, scriviamo:

[Index("IX_FreeDailyKm_Clustered", IsUnique = false, IsClustered = false)]
public int FreeDailyKm { get; set; }

 

Mentre per creare un indice che insiste su due proprietà, è sufficiente utilizzare lo stesso nome come da esempio:

[Index("IX_Engine", 2)]
public string EngineSize { get; set; }

[Index("IX_Engine", 1)]
public int HP { get; set; }

 

Utilizzando EF migrations per aggiornare il database, avremmo:

CreateIndex("DomusDotNet.Vehicles", "FreeDailyKm", name: "IX_FreeDailyKm_Clustered");
CreateIndex("DomusDotNet.Vehicles", new[] { "HP", "EngineSize" }, name: "IX_Engine");

 

Quindi, a livello di database:

image

posted @ 20/03/2014 16.49 by Pietro Libro

BlaBuzz, il nuovo blog-magazine su Internet e i social dedicato alle PMI

Internet, social media, app, web marketing. Per le imprese, in particolar modo per le piccole e medie imprese, queste parole possono risultare un labirinto, una specie di scatola infernale difficile da gestire. Eppure le opportunità connesse alla Rete sono tante e non coglierle potrebbe essere un errore imperdonabile.

Per offrire consigli, suggerimenti, indicazioni utili e in linea con le trasformazioni e le tendenze del mondo del web è nato BlaBuzz, il blog-magazine che strizza l’occhio alle PMI.

“Internet a misura d’impresa” è il motto della piattaforma, che in modo non troppo formale e rigoroso, tra una chiacchiera (a cui allude il termine bla) e l’altra su argomenti rilevanti, che generano mormorio sul web (buzz, appunto), vuole diventare un punto di riferimento per le imprese che si approcciano per la prima volta al mondo dei blog, dei social, delle Digital PR. Un canale informativo e divulgativo, una sorta di guida rapida ad internet pensata per imprenditori, appassionati del mondo digital, studenti e semplici curiosi che non si accontentano di navigare a vista in un mare di sigle e occasioni da cogliere al volo per incrementare il proprio business.

BlaBuzz propone ai suoi lettori rubriche e aggiornamenti settimanali a cura di professionisti del mondo dei social network e giornalisti esperti in nuove tecnologie che hanno fatto la scelta di usare un linguaggio il più possibile lontano dal gergo specialistico e facilmente comprensibile anche a chi sa poco o nulla del web. Gli argomenti proposti spaziano dalla strategie alle analisi di mercato, dall’ufficio stampa on line al community management fino alle digital PR, senza dimenticare e-commerce, gestione dei contenuti, mobile e app.

Una rubrica è riservata, inoltre, agli strumenti principali usati dai brand e dalle imprese on line: blog e sito aziendale, community, forum, newsroom, fan page, gruppi e profili sui principali social network, il cui uso e la cui storia vengono presentati ai lettori in agili post settimanali. Perché si fa presto a dire: apriamo una pagina Facebook, un profilo LinkedIn, un account su Google +, Twitter o Pinterest, piuttosto che creaiamo un luogo su Foursquare. Molto più difficile è capire come usare i social in ottica imprenditoriale e quali sono gli strumenti pensati dagli sviluppatori appositamente per le aziende.

E proprio per offrire una finestra sul mondo dei social a misura di piccole e medie imprese italiane, ampio spazio è riservato ai settori chiave della nostra economia: commercio, cultura, food, impiantistica, export, turismo, salute e benessere, sport, con aggiornamenti, report, statistiche, approfondimenti utili a scoprire insieme cosa cambia e quali sono le strategie, i casi più significativi e le risorse presenti nel mondo dell’on-line per ogni signolo settore.

Per passare dal dato empirico alla prova pratica, BlaBuzz propone anche uno spazio riservato alla formazione, in cui rilancia i corsi, i webinar e tutte le attività formative messe in campo dai professionisti di Imprenditore on line, dalla Rete d’imprese 3 Circles e da tutti i partner collegati. Appuntamenti periodici a cura di esperti del settore organizzati proprio per garantire autonomia di azione e di scelta a piccoli e medi imprenditori che si vogliono affidare a mani esperte.

Volete saperne di più? Allora venite a scoprire BlaBuzz all’indirizzo http://www.blabuzz.imprenditoreonline.it/

posted @ 20/03/2014 12.01 by Marco Maltraversi

EF 6.1 : What’s new (1)

Da qualche giorno è stata rilasciata in RTM la versione 6.1.0 di Entity Framework. Una delle novità piu’ interessanti è sicuramente la possibilità di utilizzare l’approcio  Code First partendo da un database esistente (potrebbe sembrare strano, ma se pensiamo ad un nuovo sviluppo potrebbe non esserlo). I “ferri” da utilizzare sono ovviamente  EF 6.0.1 e la nuova versione di EF Tools, “scaricabile” per VS 2012 e VS 2013 seguendo questo link.

Per un semplice test, apriamo VS 2013 (o 2012), magari creando un semplice progetto “Console” al quale aggiungiamo tramite NuGet i riferimenti a EF 6.0.1. Poi tasto destro sul progetto e “Add New Item”, e scegliamo “ADO.NET Entity Data model”:

image

Il testo di “Name” infuenzerà il nome della classe “DbContext” generata. Dalla scheramata successiva (“Entity Data Model Wizard”) scegliamo “Code First model from Database”:

image

Nella schermata successiva del Wizard verrà chiesta la connessione dati da utilizzare (eventualmente ne creiamo una nuova), nel mio caso, per i test ho utilizzato un DB di un evento “DomusDotNet”. L’ultimo passo è la scelta degli oggetti da “importare”:

image

Dopo aver premuto “Finish” e qualche secondo di pazienza, VS aggiungerà all’alberatura del progetto, tutte le classi necessarie, una “buildata” per verificare che sia tutto a posto , e qualche riga di codice per verificare l’estrapolazione dati :

using (CarRental db = new CarRental())
{
    System.Console.WriteLine("There are {0} cars.", db.Cars.Count());
    System.Console.ReadKey();
}

posted @ 20/03/2014 11.42 by Pietro Libro

C# vNext: “expression bodied functions”

Questa è una figata:

public class Foo
{
    public Int32 Evaluate( SomeInput data ) => …;
}

Lasciamo perdere la non-implementazione , ma notiamo piuttosto che Evaluate è un metodo a tutti gli effetti, il cui body invece di essere inutilmente verboso si limita ad una lambda, in realtà è una espressione, non viene generato un expression tree, usa solo una sintassi simile a quella delle lambda.

.m

Non tutte le feature che vediamo saranno sicuramente implementate, questi post sono basati sui draft pubblicamente disponibili al momento della scrittura

posted @ 20/03/2014 10.00 by Mauro Servienti

Managing without impeding self-organisation



From the series of posts on Self-Organisation.

I used to play football and basketball with friends every now and then in the afternoons after school. We formed 2 teams with the
same size and with players filling the basic roles required for the game.

We were free to self-organise guided and constrained by the teams size and roles. Teams size and roles defined our 
boundaries/barriers.


This excerpt from Joseph Pelrine training material describes 
boundaries/barriers:

They define the edges of the system, who is in and who is out. By changing the barriers of the system, who is included and who is not, you change the dynamics in the system. In a sense, a boundary is the opposite of an attractor – people will shy away from it. “Barriers” is a more appropriate term than “boundaries”


Boundaries and barriers can be rigid or elastic, and the elastic ones are more resilient.  They are useful when:
1) They are good, beneficial, fit for purpose
2) The team is capable to benefit from them


Boundaries and barriers can be set by an agile manager or a coach. And also originate from external factors such as company strategic direction, company policies, budget, technology, partners, clients, and project goals and priorities. An agile manager and a coach can set and tweak and visualize boundaries and barriers to guide and safeguard the team:


to direct and influence the emergence of behaviors toward positive directions, 
to amplify the emergence of beneficial behaviors and to reduce or revert the non beneficial ones.


So managers can influence the outcomes without micro-managing and without impeding self-organisation.


posted @ 19/03/2014 3.25 by Luca Minudel

Latest Images

From Immagini
From Foto
From Foto
From Foto
From Immagini
From Immagini
From Immagini
From PrivateImage
From image
From post
From post
From Immagini
From Messaggi
From BlogImagesLayout
From Screenshots
From Messaggi strani
From Sidebar
From Sidebar
From Immagini per UGI
From Screenshots