Sun ha librerado OpenPortal, el cual deriva de Sun Java System Portal Server 7, siguiendo asà con su polÃtica de convertir todo su software en open source.
El objetivo principal de OpenPortal es la creación de una comunidad que participe en el desarrollo de componentes útiles para otras aplicaciones de tipo portal, y colaborar con otros proyectos open source para obtener beneficios mutuos.
Las caracterÃsticas que nos ofrece OpenPortal son las siguientes: Portlet container, creación y utilización de web services, framework de administración, acceso a dispositivos móviles, integración con JavaServer Faces y mucho más. OpenPortal
VÃa / CNET News.com
Es importante mantener contraseñas seguras de no menos de 10 dÃgitos y con caracteres que normalmente no incluyen los diccionarios de programas de fuerza bruta como la “ñ†y otros sÃmbolos.
It’s been a while since I provided some straightforward, back to basics style advice and there can be little doubt that the title tag is worthy of attention for beginners and experts alike. And so I present…
Como se puede ver, existen dos scripts dentro de npm: build que compila el js y extrae los CSS, y dev, que arranca el servidor de webpack habilitando HMR (🎶 ¡ya no puedo vivir sin él! 🎶).
Ambas configuraciones de webpack usan un script en común (webpack.config.common.js):
const webpack = require( 'webpack' );
const path = require( 'path' );
// Carga los ficheros .vueconst VueLoaderPlugin = require( 'vue-loader/lib/plugin' );
// Configura stylelintconst StyleLintPlugin = require( 'stylelint-webpack-plugin' );
// Para obtener un path para los aliasfunctionresolve( dir ) {
return path.join( __dirname, '.', dir );
}
module.exports = {
mode: 'production',
// Fichero inicial del proyecto
entry: './js/main.js',
// Fichero final para incluir
output: {
filename: 'js/main.js',
publicPath: '/dist/',
},
module: {
// Reglas para los ficheros
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
},
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.css$/,
use: [
'css-loader',
'sass-loader',
],
},
],
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new VueLoaderPlugin(),
new StyleLintPlugin( {
files: [ '**/*.{vue,htm,html,css,sss,less,scss,sass}' ],
} ),
],
resolve: {
extensions: [ '.js', '.vue', '.json' ],
alias: {
'@': resolve( '' ),
},
},
};
El frontend se gestiona desde el fichero main.js, que inicializará Vue y añadirá el componente principal:
import Vue from 'vue';
import Buefy from 'buefy';
import'buefy/dist/buefy.css';
import App from './components/App.vue';
import'@/assets/scss/main.scss';
Vue.use( Buefy );
new Vue( {
el: '#app',
components: {
App,
},
render: ( c ) => c( 'app' ),
} );
// accept replacement modulesif ( module.hot ) {
module.hot.accept();
}
Y ya por último el componente App.vue, que muestra simplemente un poco de HTML
Debido al problema que ha tenido Google con el tema de los clicks fraudulentos y para mostrar transparencia, ofrecerá a partir de ahora estadÃsticas del número de clicks inválidos.
Los clicks fraudulentos se realizan cuando una empresa pincha en sus propios anuncios para incrementar sus ingresos o cuando una compañÃa rival para acabar con el presupuesto para publicidad.
El porcentaje de clicks inválidos ronda el 14% y los responsables de Google aseguran que se detectan y filtran la gran mayorÃa de ellos.
VÃa / CNET News
wwiTV es un sitio que nos permite ver una infinidad de canales de TV de forma online y totalmente gratuita, sólo debemos disponer de un buen ancho de banda, aunque hay streaming disponible desde los 28.8Kb/s hasta los 2000Kb/s.