Conozca a los Devs - Qin Zhengquan

Qin Zhengquan entrevista desarrollador
Bienvenido de nuevo a nuestra Conozca al segmento Devs! En esta pieza se toma un poco de tiempo para conocer a las personas que realmente hacen que Android lo que es hoy y que es los desarrolladores de aplicaciones. En Entrevista con el desarrollador de esta semana, estamos hablando con Zhengquan Qin.

Nombre: Zhengquan Qin

Nombre del Developer: Qin Zhengquan

País: Singapur

Sitio web: Página web oficial

Google+ / Página: Zhengquan Qin G +

¿Cuántas personas en su equipo? 3

Qin Zhengquan entrevista desarrollador

Aplicaciones

Makan Kaki

Acerca de su empresa?

Makan Kaki comenzó en un proyecto de aficionado en diciembre de 2012 cuando decidimos que tenía que haber una mejor manera de organizar reuniones. Antes Makan Kaki, la organización de reuniones en las aplicaciones de mensajería actuales fue una verdadera molestia entre los grandes grupos de personas, cuando no habría conflictos de horario, los debates sobre lugares a donde ir o confusiones acerca de la ubicación de las salas. Esto dio lugar a las conversaciones de chat de largo, o piezas dispares de información. Por ejemplo, los usuarios tenían que buscar la ubicación lugar de otras aplicaciones, así como contabilizar manualmente los lugares y horarios más agradables.

Decidimos que la gestión de contenidos lugar, las herramientas de programación de citas y los medios sociales podrían formar la perfecta sinergia en la creación de la aplicación de planificación de encuentro perfecto. Esto fue lo que logramos con Makan Kaki. Por ejemplo, Makan Kaki permite a los usuarios navegar fácilmente, sugerir y votar sobre la información lugares ricos de Foursquare. También utilizamos los widgets calendario interactivo que mejoraron la calidad de experiencia de usuario en sugerir y votar sobre los horarios.

Makan Kaki también se integra bien con las aplicaciones de mensajería 3er partido para permitir a los usuarios compartir fácilmente y unirse a reuniones. Por ejemplo, los usuarios sólo pueden unirse y participar en la planificación de reunión, haga clic en una URL en WhatsApp. No es necesario registrarse y todo el usuario tiene que hacer es entrar en sus nombres para registrar su voto o sugerencia.

En la actualidad, Makan Kaki ha logrado los siguientes hitos:
- La liberación de iOS, Android y las aplicaciones Web.
- Financiación garantizada de 10, 000 SGD en Validando inicio de Grant de la Universidad Nacional de Singapur.
- Admitido en Google Developer programa de lanzamiento de Inicio Microsoft BizSpark y.
- Utilizado en Yahoo Finanzas y Singapur Columna de Singapur Straits Times de Singapur Inicio el 3 de abril de 2014.

¿Qué nivel de experiencia tiene usted con la codificación y el desarrollo?

Empecé a programar de nuevo en 2007, cuando me uní a la Licenciatura en Informática, y posteriormente el programa de Maestría en Informática de la Universidad Nacional de Singapur (NUS). Además de los proyectos de desarrollo de estudiantes que hicieron un uso intensivo de Enterprise JavaBeans (EJB), yo también participé en Google Summer of Code 2011, que hizo una importante migración de proyectos JSP heredados DuraSpace para ajustarse al marco Spring MVC. Cuando estaba en el programa de posgrado, he profundizado mi experiencia de desarrollo en las aplicaciones móviles, donde construí mi primera aplicación para iOS (CloudMarket) que hizo un uso intensivo de las tecnologías de Commerce Cloud.

Makan Kaki fue mi primera incursión en el que decidí aprovechar mi experiencia técnica actual para construir una aplicación que yo creía que era útil. Dr. Lek Hsiang Hui, mi co-fundador construyó el apoyo backend y desarrollo web en CakePHP mientras yo construí las aplicaciones móviles para iOS y Android, y el portal de contenidos lugar en la web.

¿Qué idiomas sabes? ¿Cómo y dónde los has aprendido?

Estoy extremadamente bien versado en Java y Objective C. Java fue el primer lenguaje de programación que tenía que aprender cuando era un estudiante de la computación en la Universidad Nacional de Singapur. Objective C, era un lenguaje que recogí cuando yo estaba desarrollando la aplicación para iOS como asistente de investigación (nota: que tengo que recoger rápido en breve). También estoy familiarizado con la programación R, C y código ensamblador. Durante un módulo de seguridad de los sistemas, demostré cómo puede producirse la programación orientada retorno de más edad se basa Ubuntu. Hice uso intensivo de programación R para construir una admisiones de MBA y herramienta de predicción en mis minería de datos y análisis de negocio de golf.

Hablando de mis fuentes de aprendizaje, mis libros técnicos favoritos hasta la fecha, son iOS y Android de programación de Big Nerd Ranch. Son serio fenomenal. Los libros no sólo me enseñó la programación de una manera que podría relacionarse fácilmente con (algo que siempre tuve dificultad cuando estaba empezando la programación), desarrollan una pasión imperecedera en mí para averiguar más sobre las aplicaciones de la tecnología.

¿Qué nivel de experiencia tiene usted con el diseño?

La experiencia de usuario de mi primera iOS era horrible. En ese momento, yo no tenía conocimiento acerca de la diferencia entre las aplicaciones web y aplicaciones móviles nativas. Inicialmente pensé que una aplicación móvil era simplemente una versión portátil de una aplicación web. Esto dio lugar a mi aplicación convertirse hogged con información que era demasiado técnico para el usuario medio a utilizar.

Mi segundo iOS aplicación de diseño (primera versión Makan Kaki) tenía un poco mejor experiencia de usuario, pero era igualmente horrible, ya que no sólo se requiere a los usuarios registrar una cuenta para poder realizar las funciones básicas de aplicaciones, totalmente comprometida la propuesta de valor central de la aplicación cuando los usuarios encuentran confuso para invitar a sus amigos a utilizar la aplicación.

Estaba durante este período en el que me decidí a tomar toda la experiencia de usuario de desarrollo de aplicaciones muy en serio, y no ese montón de venta de hacks rápidos juntos. También yo experimento el dolor de diseño de código desordenado. Los dos libros que han conformado en gran medida mis pensamientos eran Android Patrones de diseño: Soluciones de Diseño de Interacción para desarrolladores de Greg Nudelman y Código Limpio: Manual de Agile Software Artesanía por Robert C. Martin. Estos dos libros animados a adoptar un enfoque minimalista en el desarrollo de mis iteraciones posteriores de Makan Kaki, así como el mantenimiento de una base de código reutilizable y débilmente acoplado limpio en el que podía girar fácilmente o actualizar la aplicación sin romper la funcionalidad existente.

También leí lean startup Eric Ries y El Manual de Instrucciones de inicio: La Guía paso a paso para la construcción de una gran empresa de Steve Blank entender cómo elaborar mi producto viable mínimo que todavía ofrece la mejor experiencia de usuario en la propuesta de valor central.
Qin Zhengquan entrevista desarrollador

¿Qué aplicaciones has hecho?

Hasta la fecha, he hecho 3 aplicaciones completas. Nube de mercado, Makan Kaki (Primera y segunda versión) iOS y Android.

¿Cómo monetizar sus aplicaciones?

Makan Kaki pretende asociarse con los dueños del lugar para promover sus sedes a nuestros usuarios. Actualmente, Foursquare constituye la plataforma básica para proporcionar información lugar rico para nuestros usuarios, pero cree que la calidad de los datos se puede mejorar con futura asociación.

También estamos planeando para integrar características de reserva de avanzada que permite a los usuarios hacer reservas en un lugar una vez que tienen confirmar los detalles de reunión. Estamos trabajando en posibles soluciones para integrar y enviar información importante para el usuario detalles como reserva o preferencias de menú para nuestros socios proveedores.

te consideras exitoso?

Aunque no puedo decir con certeza que Makan Kaki necesariamente será un gran éxito, el conocimiento que he adquirido en el proceso fue increíble. Dentro de un corto periodo de 1 año, que no sólo adquirí en el conocimiento técnico profundo en la construcción de iOS y Android, también aprendí valiosos conocimientos sobre el proceso metodológico de inicio y lo difícil que era para generar demanda de un concepto que me pareció ser tan útil y al mismo tiempo tan tedioso para ejecutar.

¿Qué puede hacer para mejorar Android?

La fragmentación de dispositivos y la incompatibilidad del sistema operativo es en serio un dolor. Yo no tenía conocimiento acerca de la seriedad en esto hasta que probé Makan Kaki en un dispositivo de más edad que se estaba ejecutando API 15 (Ice Cream Sandwich). Inicialmente construí Makan Kaki el API 19 (KitKat) de LG y que estaba trabajando bien. Justo cuando listo para publicar la aplicación, me decidí a probar la aplicación en un viejo construido y para mi consternación, la aplicación completada accidente al comienzo. No sólo la aplicación de un aspecto terrible en mi dispositivo mayor más pequeño, el código que trabajó en API 19 (Al pasar los datos de intención de Actividad de Padres) fracasó por completo en 15 API.

Esto era algo que nunca había experimentado con iOS donde el SDK era muy estable y robusto. El IDE, Android de estudio, aunque era mucho mejor que Eclipse, también era mucho más lento que XCode. El emulador, que el que se estaba ejecutando el procesador Intel HAXM todavía era más lento que el XCode simulador de iOS.

¿Por qué eligió Android? ¿Desarrolla para otras plataformas? Cuáles son las diferencias entre ellos?

Como desarrollador de iOS, que temía la construcción de una versión de Android, porque de todo el problemas de fragmentación cuando yo estaba empezando. Sin embargo, ahora que he construido la versión de Android, estoy absolutamente en amor con él. Android ofrece una gran flexibilidad y cuentan API ricos que se adaptan adecuadamente para Makan Kaki. Me encanta el concepto de Intenciones implícitas y lo bien que funcionó con aplicaciones 3 ª parte, a diferencia del iOS UIActivityViewController que ofrece una funcionalidad muy limitada en la integración de aplicaciones 3 ª parte. En este aspecto, creo que el concepto intención implícita era una aplicación muy superior en comparación con el esquema de manejo url costumbre de iOS.

Sin embargo, en realidad prefería cómo iOS maneja la ubicación y los antecedentes de datos utilizando los Core Location marco y fondo actividades utilizando NSURLSession. Desde luego encontré el gerente de locación y el hilo manejador para el trabajo repetitivo de fondo a ser muy tedioso en la implementación. También hicieron mi código más detallado. A diferencia de la llamada delegado respalda métodos en iOS, también tengo que implementar un receptor de radiodifusión en Android para manejar recibir mensajes.

Tampoco me gusta cómo se pasa los datos de una actividad o un fragmento a otro en Android ya que esto hizo que mi código muy complejo. En iOS, los controladores de vista simplemente pueden pasar datos o implementar devolver la llamada de datos a través de la utilización de bloques. Esto hace que el código mucho más simple y fácil de leer, en comparación con Android.

Por último, también me gusta el uso de Auto-Disposiciones sobre el constructor XIB en iOS, en comparación con los atributos de diseño XML en Android. Encontré la primera a haber un montón intuitiva, visual y menos complejo en comparación con Android. También me gustó la forma en Android proporciona el uso de las bibliotecas de apoyo para mantener el apoyo de fondo con construcciones más.

¿Cuáles son sus aplicaciones favoritas?

Me encanta que aparecen de manera sencilla e intuitiva para el usuario.

Qin Zhengquan entrevista desarrollador

¿Cuál ha sido tu experiencia sido como trabajar con Google?

Una alegría absolutamente en publicar y actualizar aplicaciones en comparación con el sistema de revisión de la aplicación estricta de Apple.

¿Qué significa el futuro del desarrollo parece?

Creo aplicaciones en red son enormes! No entiendo todo el iOS frente debate Android. En mi opinión, las aplicaciones del futuro rara vez proporcionan valor en una plataforma aislada sino que se sincroniza y se comunica los datos en una nube. Cada desarrollador móvil tendrá que dominar un marco back-end como Node.js, Rails o PHP e implementar el uso de servicios web para aplicaciones de redes para llevarse a cabo.

¿Qué consejos le darías a los desarrolladores de los aspirantes?

Sea paciente cuando se trata de dominar un nuevo marco o la tecnología. Yo solía ser impaciente y recurrí a hacks rápidos investigando y experimentando con ejemplos de código para crear un prototipo rápido de mi proyecto. Ahora, me tomo un enfoque más paciente, tratando de aprender por completo y entender un marco o plataforma que incluye las mejores prácticas.

Este enfoque ha aumentado mi productividad enormemente y me permitió a Escala mis aplicaciones en consecuencia. Y, por supuesto, escribir código reutilizable limpia! Escribir código impulsado limpio y la prueba debe inculcarse desde el momento de su escritura de su primera línea de código. La alegría de produciendo un corte rápido será acortada rápidamente una vez que el código crece en mayor y hay que hacer cambios.


Entrevista con el desarrollador envuelve para arriba

Queremos agradecer Zhengquan Qin para charlar con nosotros en Entrevista con el desarrollador de esta semana! Si eres un desarrollador y esto se ve como algo que te gusta hacer, visita nuestra Meet the Devs formar! Esperamos con interés escuchar de usted.


» » Conozca a los Devs - Qin Zhengquan