Como el ingreso por publicidad se considera una actividad económica me he estado informando y leyendo sobre el tema. Te encuentras de todo. Lo más habitual es que la gente no lo declare, se trata de cantidades muy pequeñas de unos 100€ al mes. Lo pod
Tras una fase de prueba de más de medio año, Microsoft ha anunciado el lanzamiento, en 47 paÃses, de Live.com, su renovado buscador de Internet. Se trata de una evolución de MSN Search
ccREL es una forma de añadir la licencia Creative Commons a nuestros contenidos web. Su uso es muy sencillo, aunque a mi no me ha validado el HTML, si alguien sabe como conseguir que valide que lo diga:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:cc="http://creativecommons.org/ns">
<head>
<title>Judith Myerson's Stuff</title>
</head>
<body>
<div about="">
This page, by
<a property="cc:attributionName" rel="cc:attributionURL" href="http://jmyerson.org/">
Judith Myerson
</a>,
is licensed under a
<a rel="license" href="http://creativecommons.org/licenses/by/3.0/">
CC Attribution License
</a>.
</div>
</body>
</html>
YouTube, ese fantástico repositorio de vÃÂdeos, acaba de incluir dos nuevas funcionalidades muy interesantes: Quick Capture y Streams. Con Quick Capture, los usuarios pueden grabar vÃÂdeos directamente (no editarlos) desde sus ordenadores, con una c
Cuentas Pro ($24,95/año):* Subida de ficheros ilimitada, * Almacenamiento ilimitado, * Ancho de banda ilimitado…Cuentas gratuitas: * 100 MB de subida de ficheros, * 3 PhotoSets, * PhotoStream limitado a las 200 imágenes más recientes, * Sólo imágen
PHPMailer is by far the BEST way to add email functionality to your web site. This is just an article to point you in the right direction to mastering this incredible php package.
Tutorial y Blip.tv (Alternativa a Youtube). Taller completo de Eduardo Collado, de Entrevistado.com, sobre Como hacer un videoblog. Video de 33 minutos.
El uso inapropiado que se está haciendo de herramientas automáticas de validación de estándares web es motivo de preocupación de la Oficina Española del W3C (World Wide Web Consortium). Estas herramientas están siendo utilizadas para realizar anál
Sobre los finalistas del concurso organizado por Maestros del Web. Hemos echado un vistazo a cada uno de los trabajos finalistas y hay de todo, para elegir entre malo y peor. Estas son nuestras conclusiones…
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…
Hoy he encontrado por casualidad una introducción a Ruby on Rails, por parte de la Asociación Nacional de Webmasters de Perú que está bastante bien: sin entrar muy a fondo repasa los conceptos básicos, explica cómo instalar Ruby on Rails e incluso c
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