¿Qué programas utiliza en su negocio diario como desarrollador de software además del IDE y por qué?

Según el día específico, mis herramientas varían, aunque hay algunas que son bastante estándar a diario:

  • Vim es mi editor de facto . La mayoría de los archivos que no son IDE terminarán siendo editados aquí.
  • Kate también está allí cuando necesito hacer actualizaciones “rápidas y sucias” a páginas web o scripts (principalmente PHP o JavaScript).
  • LibreOffice como, ya sabes, necesitas editarlos documentos.
  • Oracle VM VirtualBox con Windows XP, Windows 7, DOS y CentOS, como las principales máquinas virtuales. Necesito principalmente Windows para dos cosas: (a) los archivos DocX que LibreOffice todavía no puede leer (o escribir) correctamente, ya que mis colegas los están usando, y (b) Visual Studio para proyectos VB.NET.
  • VLC y Audacity. Apenas puedo trabajar sin mi mermelada. Tengo que tener mi lista de reproducción (principalmente música rap y bandas sonoras de Fast and Furious ) mientras trabajo.
  • Firefox Demasiadas cosas que no se pueden hacer sin un navegador decente.
  • Hay más, por supuesto, pero esto es en lo que puedo pensar ahora mientras lo tenemos en juego. Paz.

El más grande es mi editor. No uso los editores dentro de IDEs, porque todavía no he encontrado uno superior a mi editor independiente: CodeWright.

CodeWright es un editor “basado en proyectos”, lo que significa que conoce todos los archivos que componen un proyecto y puede realizar acciones basadas en eso. Si utiliza un compilador y un vinculador de línea de comandos, puede hacer compilaciones desde CodeWright, y le mostrará dónde están los errores y las advertencias.

Mi editor tiene todas las cosas habituales del editor, además de muchas otras para las que otros usan programas separados, como:

Grep

Buscar (buscar archivos)

Diff, con capacidad de edición de archivos diff. (como se puede hacer con el programa “Más allá de comparar”)

Edición de archivo binario

Proyecto amplio de búsqueda y reemplazo

Crear una base de datos de símbolos del código del proyecto

Use un solo clic para llevarlo a la definición o creación de instancias de cualquier símbolo que pase sobre (variable, función, clase, etc.), independientemente de en qué parte del proyecto se encuentre.

y mucho más.

Pero si eso no es suficiente, uno puede escribir fácilmente sus propias extensiones en CodeWright para hacer casi cualquier cosa que desee.

Estos son algunos de los programas distintos de un IDE que uso regularmente durante mi jornada laboral.

Un repositorio de código fuente, en mi caso git. Proporcionan una manera de desarrollar en colaboración un nuevo software al realizar un seguimiento de varias versiones del código. Casi todo nuestro código fuente, para todos nuestros clientes, se mantiene en git.

Un sistema de construcción, principalmente maven para Java / Groovy, y rake para Ruby on Rails.

Editores simples como vim y Notepad ++. Estos son más rápidos para cambios rápidos que los IDE.

Varios programas de mensajería instantánea, principalmente Skype y Slack recientemente, pero he usado varios otros a lo largo de los años. Estos son útiles cuando se trabaja de forma remota o con miembros remotos del equipo, los cuales ocurren regularmente. También usamos regularmente el correo electrónico para las comunicaciones.

Y, uno de los programas más importantes, un navegador web (uso principalmente Chrome, pero a veces Firefox u otros). Regularmente busco documentación, tutoriales, ejemplos, etc., para descubrir o recordar cómo hacer cosas que no suceden con la frecuencia suficiente para memorizarlas.

Le daré un ejemplo de cómo NO enriquecer su negocio diario con programas.

Oh mi. ¿Donde empezar? Eliminemos el sistema operativo y la virtualización.

Docker Toolbox para ejecutar:

  • Docker dentro de VirtualBox en Windows
  • con Alpine Linux ejecutándose en eso.

VirtualBox también ejecuta una versión de XUbuntu para desarrollar en un entorno similar y construir un contenedor Docker diferente que ejecute Ubuntu .

Todo esto está en Windows 10 .

¿A dónde sigue? Mencionaré IDEs o cosas como SublimeText que a veces se consideran IDE porque es parte del punto que estoy haciendo.

Visual Studio para el mantenimiento de la aplicación C de legado de 100k + líneas relacionadas,

Eclipse / PyDev para todos los Python involucrados, tanto en Windows como en XUbuntu.

5 comandos para ejecutar varios servicios y servidores para pruebas,

Notepad ++ para editar casi cualquier cosa,

git para – ¿qué más? – control de fuente / versionado

SourceTree por su buena capacidad de comparación de fuentes (no me gusta realmente usarlo para administrar la fuente, ya que siempre produce errores y arruina mis repositorios)

TeamViewer, GoToMeeting, WebEx y Slack para colaborar con los miembros del equipo y reunirse con clientes, dependiendo de quién, dónde y cuándo

Sublime Text Editor para scripts de shell, Python aislado, etc.

CPython para ejecutar archivos Python.

Varios navegadores para probar y desarrollar los componentes web,

Windows Ubuntu / Bash shell para ssh , tail , grep y gitk , básicamente una forma superior de transmitir registros, filtrarlos y también gitk es para la comparación de archivos fuente.

Guiones de línea 1k + que he desarrollado para automatizar tareas con Docker, creación de paquetes, etc.

Finalmente, varias utilidades de Linux en diferentes momentos, según corresponda, como gzip , bash, vim , nano , etc.

Todos estos se abren a la vez para este proyecto y estoy seguro de que me he perdido algunos.

Ah, y LiveTunes en mi iPhone porque me gusta cómo hace que la música suene menos procesada.

Todo esto no enriquece mi vida. Mi consejo es que nunca haga nada que requiera tantas herramientas de desarrollo diferentes al mismo tiempo, de hecho, ejecute gritos, incluso si tiene una calificación única y la paga es excelente.

  • Beyond Compare: Bueno, sin duda. Simplemente me encanta. Es una utilidad de comparación de datos. Además de comparar archivos, el programa es capaz de hacer una comparación lado a lado de directorios, directorios FTP y SFTP, directorios de Dropbox, etc.
  • Microsoft Excel : creo que no necesita explicación. Tiene muchas aplicaciones. Pero lo uso básicamente para fusionar datos, convertir datos delimitados en campos separados y para otro análisis de datos.
  • Utilidades Linux / Unix: Estoy asombrado de las capacidades de utilidades como grep, sed y awk. ¡Pruébalo y sorpréndete!

El desarrollo de software es vasto en términos de tecnología y su uso. Cada dominio (finanzas, comercio electrónico, Helth care, etc.) tiene sus propios requisitos. Todos los programas tienen beneficios individuales basados ​​en esos méritos.

En general, además del uso comercial de IDE, se utilizan las siguientes cosas:

Comunicación: correos electrónicos, holgura, etc.

Herramientas de gestión de proyectos / seguimiento de defectos: Jira, Bugzilla, etc.

Herramientas de mantenimiento del repositorio: Git Hub, Bit Bucket, etc.

Trello – Gestión de proyectos

Slack – Comunicación del equipo

Dropbox: compartir cosas y documentos

Git / Gitlab: control de versiones, revisiones de código, copia de seguridad, etc.

Editor de Código – Facilita las cosas

Cartero: para probar apis / servicios web

sql Workbench – cliente db

etc.

Thunderbird

  • Tengo como 9 correos electrónicos de trabajo en 2 empresas y 4 departamentos. Escribí una extensión básica que las clasifica a todas y descarga las personales en una cuenta separada

Evernote

  • Siempre en ese juego de enciclopedia personal

Estudio visual

  • No es solo un IDE, es una forma de vida

Sofismo

  • He convencido a los jóvenes de mi empresa de que el correo electrónico es de la vieja escuela, así que esto es lo que usamos

InDesign

  • Hacer que las cosas se vean bien y organizadas es una habilidad necesaria para algo más que diseñadores gráficos

Uso Slack para comunicarme con compañeros de equipo y clientes.

Spider player. No puedo trabajar sin música, y me gusta que un reproductor liviano haga el trabajo.

Firefox Tengo muchas configuraciones personalizadas, y me gusta mucho este navegador.

Notepad ++ (windows) / scite (linux) / JEdit. Me gusta tener un editor muy pequeño con muchas opciones.

¡Creo que es todo lo que necesito, ahora, solo da el código y pongo la magia!

More Interesting

¿Será suficiente un paquete salarial del Reino Unido de 45,000 por año para criar una familia (mi esposa y mi bebé de 1 año) en Londres? ¿Cuánto efectivo tendré disponible? ¿Es 45k por año un buen paquete para un desarrollador de software con más de 6 años de experiencia?

Cómo desarrollar software para un cajero automático

¿Qué habilidad es más importante cuando se busca un puesto de desarrollador de software de nivel de entrada? Pruebas de software o conceptos básicos de Oracle

¿Cuál es la mejor computadora portátil económica para desarrolladores?

¿Qué empresas de personal (EE. UU.) Utiliza para contratar trabajadores por contrato (principalmente desarrolladores de software) para proyectos a corto / mediano plazo? Necesito recomendaciones.

¿Hay programadores que aprenden mejor leyendo libros que haciendo?

¿Qué necesitaría hacer para calcular la deuda técnica de un proyecto de software?

¿Puedo pasar del soporte de producción al desarrollo de software?

¿Cuáles son las diversas metodologías de desarrollo de software?

¿Cuáles serían las diferencias entre un desarrollador de software .Net real y un desarrollador .Net falso?

¿Cómo pueden los pasantes de ingeniería de software lograr impulsar el código a la producción en menos de 3 meses, dado que utilizan múltiples tecnologías, la mayoría de las cuales son utilizadas por primera vez?

¿Qué es mejor, aprender diseño web o desarrollo de software?

¿Qué queremos decir con "confiabilidad" en ingeniería de software?

¿Por qué trabajas como desarrollador de software en lugar de construir tu startup?

En la actual economía post-crisis financiera, ¿es más gratificante financieramente ser un desarrollador de software altamente competente o un analista / desarrollador cuantitativo promedio?