• 0

El Samsung Galaxy S8 vendrá con una batería del mismo proveedor del Galaxy Note 7

Samsung SDI es una de las fabricas pertenecientes al conglomerado Samsung Electronics, quienes se encargan de fabricar baterías para los dispositivos que la compañía Sur-Coreana va lanzando al mercado. Y si, está empresa fue la que fabrico la batería del fallado Samsung Galaxy Note 7 y te cuento que será la misma quien fabrique las baterías del nuevo buque insignia del gigante Sur-Coreano.

De acuerdo a un nuevo informe que ha salido a la luz en Corea del Sur, apunta a que la compañía Samsung está completamente segura que la baterías fabricadas por Samsung SDI no son las causas del desastre del Galaxy Note 7, y al parecer, la firma habría renovado contrato para que suministre las baterías del nuevo Galaxy S8.

Sin embargo, anteriormente se había comentado que LG sería uno de los proveedores de las baterías de los nuevos dispositivos de Samsung, por lo que la compañía podría estar buscando diversificar el suministro de este complemento para su nuevo dispositivo emblema.

Con renovación de los servicios de Samsung SDI podría deberse a que el problema del Galaxy Note 7 no fue la batería sino más bien del diseño, tal y como lo reporto la compañía Instrumental, quienes hicieron una investigación sobre el problema que presentaba este phablet en su momento. Pero hasta el momento no hay un informe oficial por parte de Samsung con respecto al problema, pero este no tardará mucho, ya que la compañía ha mencionado que hará publico los resultados a finales de este mes.

¿Será buena idea utilizar las mismas baterías?


  • 0

Meetup Desarrollo de Software Tecamachalco

Category : Principal

Todos en Tecamachalco están invitados al primer meetup sobre desarrollo de software y redes, para saber mas acerca de nuevas tecnologías. El objetivo de esta reunión es para conocer y convivir con personas interesadas con el universo de las tecnologías que vivan en Tecamachalco o en sus alrededores.

 

La entrada es gratis a todas las personas interesadas.

 

Agenda

 

17:30 a 18:00 horas: Ingreso a las instalaciones

 

18:00 horas: Primer Platica:

 

18:30 horas: Segunda Platica:

 

19:30 horas: Tercer Platica:

 

20:00 horas: Networking.

 

Las reuniones se tienen planeadas que sean cada mes y pues conforme pase el tiempo se valla teniendo apoyo de mas personas interesadas.

 

El lugar donde se va a realizar la reunión en en Café Colibrí que esta ubicado en 6 sur #506 Tecamachalco Pue.

https://www.meetup.com/es-ES/Meetup-de-Desarrollo-de-software-en-Tecamachalco/events/234768312/

Te esperamos en esta reunión.


  • 0

Como Dividir Sublime Text en Multiples Paneles

Con este Plugin Sublime Text podrán abrir mas paneles diferentes para editar tu código en una misma ventana.

El plugin Se llama “More Layouts”, y lo que nos permite es agregar mas tipos de estructuras a Sublime Text.

Con tipos de estructura me refiero a paneles en los que podemos poner pestañas y así organizar nuestro código mucho mejor. Por defecto sublime Text ya nos permite agregar hasta 3 columnas que podemos agregar desde el menu View > Layout

“Read More”

  • 0

Crud PHP usando Ajax y Json

Buen día a todos en este post les quiero compartir unos slides que subí a http://slideshare.net cabe mencionar que no soy el autor de estos Slides si no de un profesor que me dio clases en la Universidad que se llama Rosalino Santos Valeriano y pues si lee este post pues le enviamos un saludo. bueno son 5 presentaciones en las cuales se tiene lo basico para que puedas hacer un pagina web y conceptos básicos sobre Ajax y Json, de igual manera les dejo una liga con el repositorio donde subí el código del proyecto que se realizo con dichas diapositivas.

y por si no saben como instalar Lamp en un distro de Gnu/Linux les dejo estes post:

INSTALAR EL SERVIDOR LAMP EN DEBIAN

y aca les dejo la liga para que puedan descargar el proyecto de que se explica en las diapositivas

https://github.com/bl4ck0is1s/crudphp

 


  • 1

INSTALAR EL SERVIDOR LAMP EN DEBIAN

Hola amigos hoy vamos a ver la instalación básica del servidor LAMP (linux apache mysql and php) en debian

antes de empezar actualisemos nuestro sistema:

apt-get update apt-get upgrade

todo esto debe ser como usuario root

Paso 1: instalar el Apache2:
apt-get install apache2
Ejecutando posteriormente:
a2enmod rewrite

Paso 2: instalar MySQL
apt-get install mysql-server
y luego ejecutar:
mysql_secure_installation

Paso 3: instalar el PHP5:
apt-get install php5 php-pear php5-suhosin php5-mysql

y por si quieren instalar el gestor phpMyAdmin:
apt-get install phpmyadmin

ahora solo queda reiniciar el servidor con :
/etc/init.d/apache2 restart

Y listo nuestro servidor web.

ahora solo queda ver si es que phpmyadmin si funciona correctamente y lo probaremos con lo siguiente, en nuestro navegador pondremos

http://localhost/phpmyadmin

En algunos de los casos nos saldra el siguiente mensaje

It works!

This is the default web page for this server.
The web server software is running but no content has been added, yet.

pero eso se soluciona haciendo un enlace simbolico a la carpeta phpmyadmin con lo siguiente:

ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

y asi tendran resuelto este problema.

Saludos.

  • 0

TRANSFERIR ARCHIVOS ENTRE EQUIPOS CON GNU/LINUX USANDO UDPCAST DESDE CONSOLA

UDPcast es una herramienta de transferencia de archivos que permite enviar datos desde un equipo a varios destinatarios a la vez en una red local de una forma bastante rápida, sobre todo si la transferencia la realizamos en modo multicast (opción por defecto).

Para poder transferir archivos mediante UDPcast entre máquinas, lo primero que tenemos que hacer es instalar el paquete udpcast con el siguiente comando en el caso de debian.

# apt-get install udpcast

si es que no lo puedes instalar en mi caso no se encuentra en los repositorios de centos  lo puedes bajar de la pagina oficial.

http://www.udpcast.linux.lu/downloads.html

Enviar y recibir archivos
UDPcast está pensado para enviar archivos de forma individual. Así que, si comprimimos el archivo antes de enviarlo, la transferencia se realizará en menos tiempo.
En el equipo servidor ejecutaremos:
# udp-sender –file archivo
Y en los equipos receptores:
# udp-receiver –file archivo
En el servidor nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a enviar datos:
“Ready. Press any key to start sending data.”
En los clientes nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a recibir datos:
“Press any key to start receiving data!”
Pulsamos una tecla en el servidor o los clientes y comenzará a realizarse la transferencia.
Enviar y recibir directorios

Si queremos enviar y recibir directorios, mediante un pipe podemos hacer uso de un empaquetador como tar o gzip:

En el equipo servidor ejecutaremos:
# tar cf – directorio | udp-sender
Y en los equipos receptores:
# udp-receiver | tar xf –
Al igual que en el caso anterior, en el servidor nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a enviar datos:
“Ready. Press any key to start sending data.”
Y en los clientes nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a recibir datos:
“Press any key to start receiving data!”
Pulsamos una tecla en el servidor o los clientes y comenzará a realizarse la transferencia.
Enviar y recibir particiones

Como las particiones se tratan como archivos, si queremos clonar una partición, tan sólo tenemos que especificar el nombre de esa partición. Por ejemplo, si queremos clonar directamente la partición sda1 de una máquina en un conjunto de máquinas remotas:

En el equipo servidor ejecutaremos:
# udp-sender –file /dev/sda1
Y en los equipos receptores:
# udp-receiver –file /dev/sda1
En el servidor nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a enviar datos:
“Ready. Press any key to start sending data.”
En los clientes nos mostrará un mensaje que dice que pulsemos una tecla para comenzar a recibir datos:
“Press any key to start receiving data!”
Pulsamos una tecla en el servidor o los clientes y comenzará a realizarse la transferencia.
 Algunas opciones útiles
UDPcast tiene muchas opciones. Algunas de las que me parecen más interesantes son las siguientes:
  • –interface ethX: Útil, si el equipo tiene varias interfaces de red para que escuche en una determinada.
  • –nokbd: Sirve para que el comando no espere a que el usuario pulse una tecla.
  • –min-receivers n: Sirve para indicar el número mínimo de receptores.
  • –min-receivers n: Sirve para indicar el número máximo de receptores.
  • –min-wait t: Mínimo tiempo (en segundos) a esperar antes de comenzar la transferencia.
  • –max-wait t: Máximo tiempo (en segundos) a esperar antes de comenzar la transferencia.

  • 0

Crud (create, read, update, delete) Java con Jdbc

En este post vamos a ver lo que es un CRUD ( Create, Read, Update, Delete) y empezaremos a crear nuestra base de datos:


CREATE TABLE usuario (
id_usuario int(11) NOT NULL AUTO_INCREMENT,
nombre varchar(100) NOT NULL,
apellido_paterno varchar(100) NOT NULL,
apellido_materno varchar(100) NOT NULL,
edad int(11) NOT NULL,
username varchar(100) NOT NULL,
password varchar(300) NOT NULL,
PRIMARY KEY (id_usuario)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;

Despues tendremos nuestra clase conexión hacia la base de datos y nos quedara de la siguiente forma:

package com.mx.crudjdbc.config;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.swing.JOptionPane;

public class ConnectionDataBase {

public static Connection conexion = null;

public static Connection getConexion() {
try {
conexion = null;
//cargar nuestro driver
Class.forName(“com.mysql.jdbc.Driver”);
conexion =DriverManager.getConnection(“jdbc:mysql://localhost/nombreBase”,”root”,”password”);
System.out.println(“conexion establecida”);
} catch (ClassNotFoundException | SQLException e) {
System.out.println(“error de conexion”);
JOptionPane.showMessageDialog(null, “error de conexion “+e);
}

return conexion;
}
}

Lo siguiente es crear un archivo java con el nombre de la tabla de la base de datos, el cual se llamara UsuarioVo.java y contendrá lo siguiente:

package com.mx.crudjdbc.vo;

/**
*
* @author bl4ck0is1s
*/
public class Usuario extends InterfaceObject{
private int idUsuario;
private String nombre;
private String apellidoPaterno;
private String apellidoMaterno;
private int edad;
private String username;
private String password;

public int getIdUsuario() {
return idUsuario;
}

public void setIdUsuario(int idUsuario) {
this.idUsuario = idUsuario;
}

public String getNombre() {
return nombre;
}

public void setNombre(String nombre) {
this.nombre = nombre;
}

public String getApellidoPaterno() {
return apellidoPaterno;
}

public void setApellidoPaterno(String apellidoPaterno) {
this.apellidoPaterno = apellidoPaterno;
}

public String getApellidoMaterno() {
return apellidoMaterno;
}

public void setApellidoMaterno(String apellidoMaterno) {
this.apellidoMaterno = apellidoMaterno;
}

public int getEdad() {
return edad;
}

public void setEdad(int edad) {
this.edad = edad;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}
@Override
public String toString(){
return getNombre() + “,” + getApellidoPaterno() + “,” + getApellidoMaterno()
+ “,” + getEdad() + “,” + getUsername() + “,” + getPassword();
}
}

de igual forma crearemos una clase que un DAO (Data Access Object), el cual nos ayudara a persistir los datos hacia la base de datos, el cual tiene los metodos para insertar, modificar y listar


package com.mx.crudjdbc.dao.impl;

import com.mx.crudjdbc.config.ConnectionDataBase;
import com.mx.crudjdbc.dao.UsuarioDao;
import com.mx.crudjdbc.vo.Usuario;
import java.awt.HeadlessException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
import org.apache.log4j.Logger;

public class UsuarioDaoImpl implements UsuarioDao {

private static final Logger logger = Logger.getLogger(UsuarioDaoImpl.class);

@Override
public Usuario saveUsuario(Usuario usuario) {
Connection reg = ConnectionDataBase.getConexion();

String sql = “INSERT INTO usuario (nombre, apellido_paterno, apellido_materno, edad, username, ”
+ “password) VALUES ”
+ “(?,?,?,?,?”
+ “,?)”;
try {

PreparedStatement pst = reg.prepareStatement(sql);

pst.setString(1, usuario.getNombre());
pst.setString(2, usuario.getApellidoPaterno());
pst.setString(3, usuario.getApellidoMaterno());
pst.setInt(4, usuario.getEdad());
pst.setString(5, usuario.getUsername());
pst.setString(6, usuario.getPassword());

int n = pst.executeUpdate();
if (n > 0) {
logger.debug(“usuario registrado: ” + usuario.toString());
JOptionPane.showMessageDialog(null, “Usuario Registrado Exitosamente”);
}

} catch (SQLException ex) {
logger.error(ex.getMessage());
JOptionPane.showMessageDialog(null, “Error – ” + ex);
ex.printStackTrace();

}
return null;
}

@Override
public Usuario updateUsuario(Usuario usuario) {
Connection connection = ConnectionDataBase.getConexion();
String sql = “UPDATE usuario SET nombre = ?, apellido_paterno = ?, apellido_materno = ?, edad = ?,”
+ ” username = ?, password = ? WHERE id_usuario = ?”;
try {
PreparedStatement pst = connection.prepareStatement(sql);
pst.setString(1, usuario.getNombre());
pst.setString(2, usuario.getApellidoPaterno());
pst.setString(3, usuario.getApellidoMaterno());
pst.setInt(4, usuario.getEdad());
pst.setString(5, usuario.getUsername());
pst.setString(6, usuario.getPassword());
pst.setInt(7, usuario.getIdUsuario());

int n = pst.executeUpdate();
if (n == 1) {
logger.debug(“usuario registrado: ” + usuario.toString());
JOptionPane.showMessageDialog(null, “El Usuario se Actualizo Exitosamente”);
return usuario;
}

} catch (HeadlessException ex) {
logger.error(ex.getMessage());
JOptionPane.showMessageDialog(null, “Error – ” + ex);
ex.printStackTrace();
} catch (SQLException ex) {
logger.error(ex.getMessage());
JOptionPane.showMessageDialog(null, “Error – ” + ex);
ex.printStackTrace();
}
return null;
}

@Override
public Usuario getUsuarioById(int id) {
throw new UnsupportedOperationException(“Not supported yet.”); //To change body of generated methods, choose Tools | Templates.
}

@Override
public ResultSet getAll() {
Connection conexion = ConnectionDataBase.getConexion();
try {
String sql = “SELECT * FROM usuario”;
Statement st = conexion.createStatement();
ResultSet rs = st.executeQuery(sql);

return rs;
} catch (Exception e) {
logger.error(e.getMessage());
e.printStackTrace();
}finally {
try {
conexion.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
return null;
}

@Override
public boolean deleteUsuario(int idUsuario) {
Connection connection = ConnectionDataBase.getConexion();
String sql = “DELETE from usuario where id_usuario = ?”;
try {
PreparedStatement pst = connection.prepareStatement(sql);
pst.setInt(1, idUsuario);

int n = pst.executeUpdate();
if (n == 1) {
logger.debug(“usuario eliminado: ” + idUsuario);
JOptionPane.showMessageDialog(null, “Usuario Eliminado”);
return true;
}

} catch (HeadlessException ex) {
logger.error(ex.getMessage());
JOptionPane.showMessageDialog(null, “Error – ” + ex);
ex.printStackTrace();
} catch (SQLException ex) {
logger.error(ex.getMessage());
JOptionPane.showMessageDialog(null, “Error – ” + ex);
ex.printStackTrace();
}
return false;
}

}

Bueno pues estos son los metodos mas importantes del proyecto que de igual forma se los dejo en la siguiente liga y que podran descargar desde mi repositorio de GitHub, otra cosa el proyecto esta echo en Maven, asi que para poder ejecutarlo deberan de tener instalado y por si no saben como pueden darle un vistaso a el siguiente post Como instalar Maven en Debian y Windows y pues aca les dejo la url para descargar el proyecto: https://github.com/bl4ck0is1s/CrudJdbc.

pues eso es todo si les gusto compartan es sus redes sociales.


  • 0

Modelo de clases para bots de Telegram en C#

Category : C# , Principal , Programación

telegram

últimamente los Bots se están poniendo de moda, desde Facebook hasta Microsoft han puesto a disposición de los desarrolladores herramientas para la creación de los mismos, pero si de alguien quiero recalcar que fue de los primero y tal vez mas populares sistemas donde se pueden encontrar y desarrollar bots, esta es la aplicación de mensajería Telegram.

“Read More”

  • 0

Instalar y configurar plugin checkstyle en eclipse

En este post les compartimos un video que realizamos para la configuración de un plugin para eclipse, el cual no ayuda a verificar errores de sintaxis en nuestro código, para este caso se los presentamos para el IDE Eclipse, de igual forma les dejamos el archivo xml que se uso para la configuración del plugin en el proyecto.

Ayuda compartiendo en la redes sociales y cualquier duda deja tu comentario.


  • 0

Informe seguimiento satelital para vehiculos – manual en español gps tracker tk103

Car-GPS-Tracker-TK-103A-B- (1)
Bueno amigos hace ya unos meses me puse a investigar sobre una forma de poder realizar un seguimiento satelital del auto, mas que nada no por lo que respecta a lo material sino la preocupación es por este tema que se estada dando hoy en día de los secuestros o robos en los cuales los asaltantes se llevan como seguro algún conocido o familiar.
Y la verdad encontré esta muy buena opción con la cual tenemos un completo control del auto mediante nuestro celular, pudiendo obtener la ubicación del auto la cual el equipo nos informa por sms dándonos un link de google maps con la ubicación pudiendo verlo tanto en la computadora como en nuestro celular si es que tiene acceso a Internet, como así también no da la opción entre otras muchas otras opciones de mediante el envió de un sms al equipo detener el auto y evitar que este vuelva a encender hasta que no mandemos un nuevo sms para permitir el encendido!! obviamente creo que ya se habrán dado cuenta que para que todo esto funcione deben colocar un chip de teléfono en el equipo que puedan interactuar con el mismo! Este mismo lo podemos encontrar en la tienda de LoboSoft-mx.com
“Read More”