buy lasix http://all-treatment.org/buy-levitra-vardenafil/ http://all-treatment.org/buy-viagra-sildenafil-citrat/ isotretinoin online buy cialis online
7 febr. 2018

Kotlin

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Kotlin és un llenguatge de programació que s’executa a la màquina virtual de Java i també es pot compilar al codi font de JavaScript o utilitzar la infraestructura del compilador LLVM.

La filosofia del llenguatge Kotlin és aprofitar tot lo bo del Java i en canvi simplificar-lo radicalment, per fer la vida més senzilla als desenvolupadors. El seu desenvolupament inicial va ser a partir d’un equip de programadors de JetBrains amb seu a Sant Petersburg, Rússia. 

Encara que la sintaxi no és compatible amb Java, Kotlin està dissenyat per interoperar amb el codi Java i utilitza la biblioteca de classes Java existent.

A partir d’Android Studio 3.0, Kotlin és un llenguatge de programació totalment compatible amb Android i permet a l’usuari triar entre la segmentació Java 6 o el bytecode compatible amb Java 8.

Més informació:

29 gen. 2018

Google Sheets, un Excel amb llenguatge natural

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Vist a blog.google

Google Sheet demo

29 gen. 2018

Google AutoML: intel·ligència artifical a l’abast

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Google ha creat una nova eina, Auto ML, amb la qual els usuaris podran entrenar els seus propis algoritmes d’aprenentage. Vegeu:  cloud.google.com/automl

Algunes persones ja han suggerit que en el futur els usuaris podran disposar d’IA com aquell qui disposa de l’electricitat. Pot ser això és la primera pedra a aquest futur.

Més informació: technologyreview.es

29 gen. 2018

CSS by example: cssreference.io

Author: Joaquim Perez Noguer | Filed under: Web

A cssreference.io hi ha una bona guia visual amb exemples de com escriure un bon CSS i escollir l’efecte que més t’agrada.

14 des. 2017

Author: Joaquim Perez Noguer | Filed under: Web

Vist a https://medium.freecodecamp.org/how-to-make-your-html-responsive-by-adding-a-single-line-of-css-2a62de81e431

The final ingredient we need in order to fix this is called minmax(). We’ll simply replace 100px with minmax(100px, 1fr). Here’s the final CSS.

.container {
    display: grid;
    grid-gap: 5px;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    grid-template-rows: repeat(2, 100px);
}

Notice that all the responsiveness happens in a single line of CSS.

This results in the following behavior:

And as you can see that works perfectly. The minmax() function defines a size range greater than or equal to min and less than or equal to max.

So the columns will now always be at least 100px. However if there are more available space, the grid will simply distribute this equally to each of the columns, as the columns turn into a fraction unit instead of 100 px.

 

28 nov. 2017

URL amb protocol data: en comptes html:

Author: Joaquim Perez Noguer | Filed under: Seguretat

Fa temps els navegadors van prohibir URL amb protocol javascript: pels problemes de seguretat que podien portar. Per exemple

javascript:alert('hola');

Però van deixar el protocol data:.  Amb el qual es pot fer el mateix:

data:text/html,<script>alert('hola');</script>

Les noves versions dels navegadors arreglaran aquest problema i només deixaran data: pels següents casos:

  • User explicitly entering/pasting “data:…” into the address bar

  • Opening all plain text data files

  • Opening “data:image/*” in top-level window, unless it’s “data:image/svg+xml”

  • Opening “data:application/pdf” and “data:application/json”

  • Downloading a data: URL, e.g. ‘save-link-as’ of “data:…”

Més informació:

23 nov. 2017

Mozilla Social Services a Firefox 57

Author: Joaquim Perez Noguer | Filed under: Web

El Firefox 57 ja no té el botó de compartir a les xarxes socials.

Amb el nou API per extensions s’ha eliminat del tot l’API Social Share.

Si es vol es pot instal·lar un nou complement que fa el mateix:


Share Backport.

15 nov. 2017

SQL PRIOR

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Per treballar amb SQL amb taules amb relacions amb elles mateixes, cal utilitzar l’operació CONNECT BY PRIOR de Oracle:

SELECT LEVEL, MGR MANAGER, LPAD(EMPNO,5*(LEVEL-1)) REPORTEE
FROM EMPLOYEE
START WITH MGR IS NULL
CONNECT_BY PRIOR EMPNO=MGR
ORDER SIBLINGS BY EMPNO
;

     LEVEL    MANAGER REPORTEE
---------- ---------- --------------------
         1
         2        100   110
         3        110        160
         4        160             180
         3        110        170
         2        100   120
         3        120        140
         3        120        150
         2        100   130

 

Una altra manera de fer el mateix amb DB2 és

WITH n(empid, name) AS 
   (SELECT empid, name 
    FROM emp
    WHERE name = 'Joan'
        UNION ALL
    SELECT nplus1.empid, nplus1.name 
    FROM emp as nplus1, n
    WHERE n.empid = nplus1.mgrid)
SELECT name FROM n

Més informació:

15 nov. 2017

SQL KEEP i DENSE RANK

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

De vegades en un llistat de la base de dades amb molts elements. La base de dades retorna més d’un valor per un mateix element, i només vols agafar el valor més nou.

La solució és utilitzar KEEP LAST:

SELECT empno,
deptno,
sal,
MIN(sal) KEEP (DENSE_RANK FIRST ORDER BY sal) OVER (PARTITION BY deptno) “Lowest”,
MIN(sal) KEEP (DENSE_RANK LAST ORDER BY sal) OVER (PARTITION BY deptno) “Highest”
FROM emp
ORDER BY deptno, sal;

Més informació  https://oracle-base.com/articles/misc/rank-dense-rank-first-last-analytic-functions

3 nov. 2017

Control de versions i Git Flow

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Per gestionar un projecte gran amb diversos equips de treball és imprescindible tenir una bona política de control de versions.

Una bona idea és utilitzar el flux de Git Flow que està molt ben explicat aquí

https://danielkummer.github.io/git-flow-cheatsheet/

Ara bé sembla ser que git flow i maven no acaben d’anar del tot bé (mireu stackoverflow.com)

git flow release start 4.2.3
maven release:prepare release:perform
git flow release finish 4.2.3

Per això la solució és utilitzar  el plugin específic de git flow per a maven: bitbucket.org/atlassian/jgit-flow

O buscar una alternativa a maven:  www.streamhead.com/maven-alternatives