List of free and open-source software packages (Updated – March 2018)


Applied fields

Artificial intelligence

  • General:
    • OpenCog – A project that aims to build an artificial general intelligence (AGI) framework. OpenCog Prime is a specific set of interacting components designed to give rise to human-equivalent artificial general intelligence.
  • Computer Vision:
    • AForge.NET – Computer Vision, Artificial Intelligence and Robotics library for the .NET Framework
    • OpenCV – Computer Vision Library in C++
  • Machine Learning:
  • Planning:
    • TREX – Reactive planning
  • Robotics
    • ROS – Robot Operating System
    • YARP – Yet Another Robot Platform


  • FreeCAD – Parametric 3D CAD modeler with a focus on mechanical engineering, BIM, and product design
  • LibreCAD – 2D CAD software using AutoCAD-like interface and file format

Electronic design automation (EDA)

Computer simulation

  • Blender – 3D modeling software written in C, C++, and Python containing cloth, hair, fluid, particle, and rigid body simulation techniques
  • flightgear – Flight simulator written for Windows, Mac OS X, and GNU/Linux
  • SimPy – Queue-theoretic event-based simulator written in Python

Desktop publishing

  • Scribus – Designed for layout, typesetting, and preparation of files for professional-quality image-setting equipment. It can also create animated and interactive PDF presentations and forms.


Integrated Library Management Software

Image editor

  • Darktable – Digital image workflow management, including RAW photo processing
  • digiKam – Integrated photography toolkit including editing capabilities
  • GIMP – Raster graphics editor aimed at image retouching/editing
  • Inkscape – Vector graphics editor
  • Krita – Digital painting and sketching application, with a variety of brush engines
  • LightZone – Free, open source digital photo editor software application.
  • RawTherapee – Digital image workflow management aimed at RAW photo processing


Reference management software




Geographic Information Systems

Grid computing

  • P-GRADE Portal – Grid portal software enabling the creation, execution and monitoring of workflows through high-level Web interfaces

Microscope image processing

  • CellProfiler – Automatic microscopic analysis, aimed at individuals lacking training in computer vision
  • Endrov – Java-based plugin architecture designed to analyse complex spatio-temporal image data
  • FIJI (software)ImageJ-based image processing
  • Ilastik – Image-classification and segmentation software
  • ImageJ – Image processing application developed at the National Institutes of Health
  • IMOD – 2D and 3D analysis of electron microscopy data
  • ITK – Development framework used for creation of image segmentation and registration programs
  • KNIME – Data analytics, reporting, and integration platform
  • VTK – C++ toolkit for 3D computer graphics, image processing, and visualisation
  • 3DSlicer – Medical image analysis and visualisation

Molecular dynamics

  • Abalone – Molecular dynamics software
  • Ascalaph Designer – Molecular modeling and simulation
  • GROMACS – Protein, lipid, and nucleic acid simulation
  • LAMMPS – Molecular dynamics software
  • MDynaMix – General-purpose molecular dynamics, simulating mixtures of molecules
  • NAMD – Parallel efficient simulation of large systems involving millions of atoms
  • NWChem – Quantum chemical and molecular dynamics software

Molecule viewer

  • Avogadro – Plugin-extensible molecule visualisation
  • BALLView – Molecular modeling and visualisation
  • Jmol – 3D representation of molecules in a variety of formats, for use as a teaching tool
  • Molekel – Molecule viewing software
  • MeshLab – Able to import PDB dataset and build up surfaces from them
  • PyMOL – High-quality representations of small molecules as well as biological macromolecules
  • QuteMol – Interactive molecule representations offering an array of innovative OpenGL visual effects
  • RasMol – Visualisation of biological macromolecules



Quantum chemistry

  • CP2K – Atomistic and molecular simulation of solid-state, liquid, molecular, and biological systems

Risk Management



Assistive technology

Speech (synthesis and recognition)

Other assistive technology

Data storage and management

Backup software

Database management systems (including administration)

Data mining

Data Visualization Components

  • ParaView – Plotting and visualization functions developed by Sandia National Laboratory; capable of massively parallel flow visualization utilizing multiple computer processors
  • VTK – Toolkit for 3D computer graphics, image processing, and visualisation.

Digital Asset Management software system

  • ResourceSpace – Widely used system with roots in the NGO sector

Disk partitioning software

Enterprise search engines

ETLs (Extract Transform Load)

File archivers

File Systems

Networking and Internet




File transfer

Grid and distributed processing

Instant messaging

IRC Clients


RSS/Atom readers/aggregators

Peer-to-peer file sharing

Portal Server

Remote access and management

Routing software

Web browsers


  • Cheese – GNOME webcam application
  • Guvcview – Linux webcam application



  • Apache Cocoon – A web application framework
  • Apache – The most popular web server
  • AWStats – Log file parser and analyzer
  • BookmarkSync – Tool for browsers
  • Cherokee – Fast, feature-rich HTTP server
  • curl-loader – Powerful HTTP/HTTPS/FTP/FTPS loading and testing tool
  • FileZilla – FTP
  • Hiawatha – Secure, high performance, and easy-to-configure HTTP server
  • HTTP File Server – User-friendly file server software, with a drag-and-drop interface
  • lighttpd – Resource-sparing, but also fast and full-featured, HTTP Server
  • Lucee – CFML application server
  • Nginx – Lightweight, high performance web server/reverse proxy and e-mail (IMAP/POP3) proxy
  • NetKernel – Internet application server
  • Qcodo – PHP5 framework
  • Squid (software) – Web proxy cache
  • Vaadin – Fast, Java-based framework for creating web applications
  • Varnish (software) – High-performance web application accelerator/reverse proxy and load balancer/HTTP router
  • XAMPP – Package of web applications including Apache and MariaDB
  • Zope – Web application server

Other networking programs


Educational suites

  • ATutor – Web-based Learning Content Management System (LCMS)
  • Chamilo – Web-based e-learning and content management system
  • Claroline – Collaborative Learning Management System
  • DoceboLMS – SAAS/cloud platform for learning
  • eFront – Icon-based learning management system
  • FlightPath – Academic advising software for universities
  • GCompris – Educational entertainment, aimed at children aged 2–10
  • Gnaural – Brainwave entrainment software
  • H5P – Framework for creating and sharing interactive HTML5 content
  • IUP Portfolio – Educational platform for Swedish schools
  • ILIAS – Web-based learning management system (LMS)
  • Moodle – Free and open-source learning management system
  • OLAT – Web-based Learning Content Management System
  • Omeka – Content management system for online digital collections
  • openSIS – Web-based Student Information and School Management system
  • Sakai Project – Web-based learning management system
  • SWAD – Web-based learning management system
  • Tux Paint – Painting application for 3–12 year olds
  • UberStudent – Linux based operating system and software suite for academic studies


  • KGeography – Educational game teaching geography

Learning support



  • KTouch – Touch typing lessons with a variety of keyboard layouts
  • Tux Typing – Typing tutor for children, featuring two games to improve typing speed

Other educational programs

  • KEduca – Test management and creation tool

File managers


Application layer

  • WINE – Allows Windows applications to be run on Unix-like operating systems


Graphical user interface

Desktop environments

Window managers

Windowing system


Content management systems

Wiki software

Healthcare software

Hobby software



2D animation

  • Pencil2D – Simple 2D graphics and animation program
  • Pivot Animator – Application used to create stick figure and sprite animations
  • Synfig – 2D vector graphics and timeline based animation
  • Tupi (formerly KTooN) – Application for the design and creation of animation
  • OpenToonz – Part of a family of 2D animation software

3D animation

  • Blender – Professional computer graphics software featuring modeling, sculpting, texturing, rigging, simulation, rendering, camera tracking, video editing, and compositing
  • OpenFX – Modeling and animation software with a variety of built-in post processing effects
  • Seamless3d – Node-driven 3D modeling software

Audio editors, audio management

CD/USB-writing software

Flash animation


Image galleries

Image viewers

Multimedia codecs, containers, splitters


Video converters

Video editing

Video encoders

Video players

Other media packages

  • Celtx – Media pre-production software

Office suites

Operating systems

Be advised that available distributions of these systems can contain, or offer to build and install, added software that is neither free software nor open-source.

Emulation and Virtualisation

Personal information managers

Programming language support

Bug trackers

Code generators

Documentation generators

  • Doxygen – Tool for writing software reference documentation. The documentation is written within code.
  • Mkd – The software documentation is extracted from the sources files, from pseudocode or comments.
  • Natural Docs – Claims to use a more natural language as input from the comments, hence its name.

Configuration software

Debuggers (for testing and trouble-shooting)

Integrated development environments

Version control systems




Data loss prevention

Data recovery



Disk erasing


Disk encryption

Database encryption


Network and security monitoring

Secure Shell (SSH)

Password management

Other security programs


Bible study tools


See also

General directories


  1. Richard Stallman (July 13, 2011). “Why Open Source misses the point of Free Software”

    . Retrieved August 24, 2011.

External links

From Wikipedia, the free encyclopedia

This is a list of free and open-source softwarepackages, computer software licensed under free software licenses and open-source licenses. Software that fits the Free Software Definition may be more appropriately called free software; the GNU project in particular objects to their works being referred to as open-source.[1] For more information about the philosophical background for open-source software, see free software movement and Open Source Initiative. However, nearly all software meeting the Free Software Definition also meets the Open Source Definition and vice versa. A small fraction of the software that meets either definition is listed here.

Some of the open-source applications are also the basis of commercial products, shown in the List of commercial open-source applications and services.





NASA vừa phát hành miễn phí hàng trăm phần mềm, một trong số đó được chính các phi hành gia sử dụng

Tiếp tục chương trình Chuyển giao công nghệ, NASA đã phát hành phiên bản 2017-2018 cho bộ phần mềm chuyên dụng trên nhiều lĩnh vực.


NASA vừa phát hành miễn phí hàng trăm phần mềm, một trong số đó được chính các phi hành gia sử dụng

Đây đã là năm thứ 3 liên tiếp NASA thực hiện chương trình này kể từ tháng 4/2014. Theo đó, bộ phần mềm năm 2017-2018 sẽ phục vụ mọi đối tượng người dùng từ sinh viên đến các chuyên gia kĩ thuật trong các lĩnh vực như xử lý, lưu trữ dữ liệu, hàng không vũ trụ, máy bay không người lái, đồ hoạ 3D…

Đặc biệt, trong đó có cả các phần mềm đang được chính NASA sử dụng và một số ứng dụng lần đầu tiên được ra mắt.

Tất cả người dùng trên thế giới có thể thoải mái trải nghiệm các phần mềm chuyên nghiệp này mà không lo đến vấn đề bản quyền hay bất kì loại phí nào.



Mỗi phần mềm còn kèm theo các thông tin như phần giới thiệu cơ bản, chức năng chính, khả năng tương thích và cả phần liên hệ nếu người dùng cần trợ giúp.

“Các phần mềm đã trở thành một phần rất quan trọng trong những thành công và các phát kiến khoa học của NASA. Chúng tôi rất vui lòng chia sẻ những công cụ này đến những người dùng trong lĩnh vực mà họ đang quan tâm. Mong là sẽ còn được thấy nhiều hơn nữa những ứng dụng thực tế và sáng tạo nhờ các phần mềm này”, kĩ sư Dan Lockney thuộc Chương trình Chuyển giao Công nghệ của NASA cho biết.

Bạn đọc quan tâm có thể tải về miễn phí các phần mềm của NASA tại đây:

Bích Lan – Theo Trí Thức Trẻ

Một câu truyện về thế giới Hacker

Hacker người Ukraine – vũ khí lợi hại nhưng cũng là ác mộng của FBI

Câu chuyện bên dưới do trang Wired kể lại về một hacker người Ukraine đã tự nộp mình cho Mỹ, làm việc với FBI để tóm một số tin tặc khác. Nhưng rồi chàng hacker này lại quay sang tấn công AT&T và một số trang khác hòng lấy được tiền chuộc để tránh tiết lộ các thông tin mật và mã nguồn phần mềm VMWare. Câu chuyện này khá ly kì, không khác gì phim hành động, tuy hơi dài nhưng rất hấp dẫn nên anh em chịu khó xem hết. Qua đó, chúng ta cũng thấy được sự giúp đỡ tận tình của một nhân viên FBI trong quá trình giúp người hacker này thoát khỏi án nặng cả trên đất Mỹ lẫn sau khi anh quay lại Ukraine.

Đến Mỹ

Tháng 1/2001, Maksym Igor Popov, một chàng trai trẻ 20 tuổi, bước đi một cách lo lắng bên ngoài cửa Đại sứ quán Mỹ tại London. Người ta cứ tưởng anh là một sinh viên chuẩn bị xin visa đi du học, nhưng thực chất anh là một hacker, là một thành viên của một băng đảng tin tặc Đông Âu đã đột nhập và tống tiền nhiều công ty ở Mỹ. Giờ đây anh đang chuẩn bị gặp một nhân viên FBI, người sẽ đưa cho anh passport và một tấm vé tới Mỹ, đổi lại anh sẽ phải làm việc cho FBI dưới danh nghĩa là một chuyên gia bảo mật.

Popov lo lắng như cũng rất hứng thú. Anh đã bỏ lại phía sau đất nước Ukraine, bỏ lại cha mẹ và tất cả những gì thân thuộc với mình. Anh cũng là một người đang bị truy nã trên toàn thế giới, giống như hình tượng của một hacker trong những quyển tiểu thuyết mà anh thích. Giờ anh sẽ làm mới lại mình bằng cách “bán” những kiến thức về bảo mật cho chính phủ Mỹ để lấy mức lương tạm được, sau đó sẽ chuyển sang làm một startup Internet nào đó rồi trở nên giàu có. Và giờ đây, anh cùng với người nhân viên FBI đó đang trên đường sang Mỹ.


Khi máy bay đáp xuống, mọi thảo thuận với Popov đã thay đổi một chút. Người nhân viên FBI từng tỏ ra thân thiện giờ đang ném Popov vào một căn phòng cách ly, sau khoảng 1 giờ thì quay lại với một công tố viên liên bang kèm theo một “đề nghị”: Popov sẽ trở thành người liên lạc của FBI, làm việc cả ngày và lừa những người bạn tội phạm của anh vào lưới FBI. Nếu từ chối, anh sẽ đi thẳng vào tù.

Popov bị sốc. Anh được đưa về một căn nhà ở Fair Lakes, Virginia với sự canh giữ 24 tiếng liên tục bởi FBI. Anh được hướng dẫn là hãy nói chuyện với những người bạn của mình bằng tiếng Nga, trong lúc đó FBI sẽ thu lại tất cả. Nhưng Popov có mánh riêng của mình. Anh giả vờ như hợp tác trong khi vẫn sử dụng các thuật ngữ Nga để cảnh báo đồng bọn của mình rằng anh đã nằm trong tay chính phủ Mỹ. Khi sự việc bị phát hiện 3 tháng sau đó, FBI đã giận dữ lôi anh khỏi căn nhà an toàn của mình và đưa vào một nhà tù nhỏ để chuẩn bị đối mặt với các cáo trạng về việc tống tiền lúc trước. Miệng thì anh chửi thề nhưng anh thật sự lo sợ. Hàng loạt công tố viên đang xếp hàng chờ để đưa anh vào tù.

Ngay lúc đó, một nhân viên FBI khác ở Santa Ana, California, và một đặc vụ tên Ernest “E. J.” Hilbert lại tin rằng chính phủ Mỹ đang cần Popov hơn bao giờ hết.

Đánh vào Western Union đòi tiền chuộc

Hilbert nhận ra Mỹ đang ở một thời khắc quan trọng về chiến tranh mạng. Trong những năm 1990, hack chủ yếu là để cho vui. Nhưng tới năm 2000, các nước Đông Âu bắt đầu ngập tràn thư rác, thư lừa đảo, trang web bị hack, trộm thẻ tín dụng… Việc hack khi đó đã dính dáng tới những tổ chức vì lợi nhuận. Năm 2001, hacker tại Ukraine và Nga đã mở trang web CarderPlanet chuyên bán thông tin cá nhân đã trộm được cũng như thông tin thẻ trên đó. CarderPlanet cho thấy một hiểm họa nổi lên với nền công nghệ toàn cầu: các vụ hack sẽ có khả năng mở rộng, không phải bình thường mà là rất nhanh.

Quay trở lại với Popov, anh lớn lên tại một thị trấn ở Ukraine nằm cách thủ đô Kiev 2km về phía tây. Anh bắt đầu tiếp xúc với máy tính năm 15 tuổi, khi đó cha của anh mang về một chiếc PC và một cái modem để lên mạng. Nó là một chiếc Poisk-I, bản sao chép do Ukraine làm dựa trên mẫu IBM XT. Khi được xem bộ phim Hackers (1995), Popov biết rằng anh sẽ là một hacker nằm ngoài vòng pháp luật, và anh sẽ kiếm tiền từ việc đó.

Popov không thiên về kĩ thuật như những người bạn của mình, nhưng anh lại có tài quản lý, thuyết phục người khác và khả năng thiên bẩm về ngôn ngữ. Anh bắt đầu kiếm tiền bằng cách xài những thẻ tín dụng trộm được, kèm theo khả năng tiếng Anh cực kì lưu loát để gọi điện và mua những thứ anh muốn. Cũng trong thời gian đó, các nhóm gangstar bắt đầu biết về những cú lừa đảo trực tuyến của Popov và bắt đầu xuất hiện tại nhà của anh để bàn chuyện “làm ăn”. Popov quyết định sẽ thử kiếm tiền bằng cách mạnh tay hơn. Anh sẽ trộm dữ liệu khách hàng của các công ty, sau đó liên hệ với công ty và cung cấp dịch vụ “tư vấn bảo mật” để thông tin của vụ trộm không bị lộ ra ngoài, đổi lại công ty phải trả tiền cho Popov.

Tháng 7/2000, nhóm của Popov hack vào E-Money, một dịch vụ thanh toán ở Mỹ (nay đã giải thể) và trộm dữ liệu của 38.000 khách hàng. Họ cũng tấn công vào trang web của Western Union để lấy thêm 16.000 dòng dữ liệu về tên, địa chỉ, password và thông tin thẻ tín dụng. Popov tiếp cận những công ty này và đưa ra lời hứa hẹn sẽ ngừng tấn công, đồng thời im hơi lặng tiếng để đổi lại khoản tiền 50.000$ đến 500.000$.

Kết quả không như anh mong đợi. E-Money giả vờ thỏa thuận với anh trong khi vẫn liên lạc với FBI, Western Union thì thông báo rộng rãi về lỗ hổng này. Vậy nên Popov không thể lấy được tiền. Trong lúc đó, căng thẳng của anh với các tên gangster khác đang lên cao. Anh đang bị kẹt tại quê nhà của mình, giữa bộn bề những vụ lừa đảo và bạo lực. Anh nghĩ tới việc nộp mình cho Mỹ, để thoát khỏi Ukraine và “reboot” lại bản thân.

Giờ thì anh lại thấy mình đang ở trong một nhà tù gần văn phòng của Western Union, thật trớ trêu. Ít nhất là cho đến khi đặc vụ Hilbert tìm thấy anh.

Hilbert có kinh nghiệm giải quyết những tên hacker và các vụ án liên quan đến máy tính. Nói cách khác, Hilbert hiểu hacker nghĩ gì và muốn gì. Hilbert biết rằng với khả năng tiếng Nga và kinh nghiệm về bảo mật của Popov, anh ta có thể thâm nhập vào những nơi mà FBI không thể tới gần. Cụ thể, đó sẽ là những phòng chat ngầm, các bảng tin bị ẩn, các mối quan hệ, và đưa những thông tin quý giá đó cho FBI xử lý. Vấn đề ở đây là phải làm sao quản lý Popov thật kĩ lưỡng, đè lại cái tôi của anh ta và cho thấy FBI đang cần kĩ năng của anh.

Hilbert thảo luận kế hoạch của anh với một công tố viên ở Los Angeles, người đang thụ lý một vụ án của Popov, và sau đó hai người ngồi lại với Popov và luật sư của mình. Bốn người đồng ý với một bản thỏa thuận. Popov sẽ chỉ phải chịu một vụ án, những vụ còn lại sẽ được xóa nếu Popov dành thời gian làm gián điệp ngầm cho FBI. Lần này, anh phải đi nói chuyện với một nhóm người lạ, những người không hề tin tưởng Popov. Hilbert gọi đây là nhiệm vụ thu thập thông tin tình báo, giống như những gì James Bond làm. “Tôi thật sự rất xem trọng kĩ năng của anh” – Hilbert nói. Tháng 3/2002, Popov kí vào bản thỏa thuận và Hilbert có được một chú chuột chũi của mình.

Bắt đầu làm việc

Sau chuyến bay dài, Hilbert dẫn Popov vào một căn phòng trong ngày làm việc đầu tiên. Ở đây có một cái ghế, một cái bàn và rất nhiều máy tính Windows thu được từ những vụ đột nhập. Hilbert còng cùi chỏ của Popov vào bàn.

Họ gọi nhiệm vụ này là “Ant City”. Giờ Popov đã online trở lại, anh sử dụng một danh tính mới và bắt đầu thâm nhập vào các phòng chat ngầm cũng như đăng thông tin lên CarderPlanet. Anh đóng giả là một tên lừa đảo người Ukraine đang đi săn thông tin thẻ tín dụng bị đánh cắp. Mục tiêu của anh bây giờ là bắt được một trong những người đứng đầu của CarderPlanet, người được biết tới với nickname Script. Popov bắt đầu liên hệ vào đầu tháng 9, cả hai bắt đầu chat riêng qua phần mềm ICQ vốn được ưa chuộng ở Châu Âu. Hai tuần sau, Popov quyết định mua 400$ dữ liệu thẻ tín dụng. Khi gửi dữ liệu này cho Popov ở California, Script đã phạm một tội liên bang ở Mỹ. Bằng chứng của Hilbert sau đó giúp cảnh sát Ukraine bắt được Script, tuy nhiên 6 tháng sau hacker này đã được thả.

Việc thu thập bằng chứng như thế này là một thứ quan trọng và chiến lược với Hilbert. Bằng cách rải một ít tiền để Popov tạo dựng mối quan hệ, họ sẽ có được một số thông tin thẻ. Dựa vào đây, Hilbert có thể làm việc với các đơn vị phát hành để xác định nguồn gốc của thẻ và nguyên nhân rò rỉ.


Một số ngày thì ngắn, một vài ngày thì dài đến 10 tiếng làm việc. Tuy nhiên, mặc cho Popov có thành công đến đâu thì tới cuối ngày, anh vẫn quay trở lại tù, còn Hilbert thì về nhà với gia đình. Nhưng vào ngày lễ tạ ơn, Hilbert đã chuẩn bị một món quà bất ngờ cho Popov. Hôm đó, khi Popov tới chỗ làm, anh thấy một cái projector đã được dựng sẵn và đang chĩa vào tường. Hilbert nhấn một vài phím trên laptop và bộ phim “The Fellowship of the Ring” bắt đầu được chiếu lên. Bữa trưa, Hilbert đem đầy đủ các món Tạ Ơn: gà tây, sốt cranberry, khoai lang, thậm chí có cả bánh bí đỏ. Popov cảm thấy cảm động vì Hilbert đã chọn dành thời gian của ngày lễ này với anh thay vì với gia đình.

Vụ án 200.000$

Khi thông tin về Ant City bắt đầu lan rộng, Hilbert nhận được yêu cầu giúp đỡ từ các văn phòng FBI khác để tìm hiểu về một số vụ hack đang diễn ra. Tháng 2 năm 2003, có một vụ lớn chưa từng có: một kẻ nào đó đã xâm nhập vào Data Processing International (DPI) – một đơn vị xử lý thanh toán, để trộm thông tin của 8 triệu thẻ. Popov bắt đầu hỏi về DPI và có một sinh viên 21 tuổi ở Nga với nickname là RES, biết về 3 hacker chịu trách nhiệm của vụ án này.

Popov nói anh muốn mua hết 8 triệu thẻ đó với 200.000$, tuy nhiên anh cần một mẫu thử nghiệm nhỏ trước. Mẫu nhỏ này sẽ giúp anh xác định xem thẻ có thật sự đến từ vụ rò rỉ của DPI hay không. RES không tin Popov có đủ tiền để chi trả vì từ trước đến giờ anh chỉ thực hiện các thương vụ nhỏ.

Hilbert nghĩ ra một giải pháp. Hilbert, Popov và một số nhân viên FBI khác đi tới một ngân hàng gần đó. Ngân hàng đã đồng ý giúp đỡ bằng cách lấy tiền từ trong két ra và để trên bàn. Hilbert tháo còng cho Popov và quay một video cảnh Popov đang cầm tiền. “Hãy nhìn vào đống tiền này đi. Chúng rất thật (chửi tục), không có gì giả cả (chửi tục). Tôi sẽ chuyển nó vào tài khoản của mình”.


Đoạn video đã làm cho nhóm hacker Nga hài lòng. Việc xác định ra RES còn dễ dàng hơn. Popov nói với hacker này rằng số tiền của anh đến từ công việc ở một công ty thẻ tín dụng tên là HermesPlast. Popov gợi ý RES hãy nộp đơn xin việc làm vào đây, gửi cho hắn ta trang web công ty và chia sẻ email của “ông sếp”, “Anatoly Feldman”.

RES gửi cho Feldman hồ sơ vào cùng ngày hôm đó, kèm theo là chứng minh nhân dân Nga của hắn. Tất nhiên, HermesPlast là công ty giả của Hilbert và Popov. Giờ FBI( đã có tên thật của RES, ngày sinh và địa chỉ. Và thật ngạc nhiên khi mánh này có thể được dùng đi dùng lại. Có một sự thật mà Popov luôn biết chắc về những hacker Đông Âu: họ thật sự muốn có một công việc.

Lần này, FBI là mục tiêu

28 tháng sau khi đến Mỹ, Popov được trả tự do ở hạt Orange, California, cách Disneyland 8 dặm. Tuy nhiên, anh không có giấy tờ nhập cư rõ ràng nên khó xin việc. Hilbert sắp xếp để FBI thuê cho Popov một căn hộ và trả lương 1000$/tháng cho anh. Nhưng Popov không thể quen được với cuộc sống này. Với sự cho phép của tòa, Popov được phép về lại Ukraine với điều kiện anh sẽ quay trở lại Mỹ sau khi đã hoàn thành án phạt của mình. Hilbert chở anh ra sân bay và biết rằng sẽ không bao giờ gặp lại Popov nữa.

Chương trình Ant City cũng đóng cửa. Theo thống kê của Hilbert, chiến dịch đã tránh cho 400.000 tài khoản thẻ tín dụng không bị phát tán ra thị trường chợ đen, đồng thời cảnh báo cho 700 công ty rằng họ đang hoặc đã bị tấn công bởi các hacker. 10 nghi phạm đã bị kết án, trong đó có Script, nhưng không có tên nào được giao cho Mỹ.

Khi về lại Ukraine, Popov lập một công ty về bảo mật của riêng mình tên là Cybercrime Monitoring Systems, gọi tắt là Cycmos. Cycmos chuyên thâm nhập vào các chợ ngầm và thông báo cho các công ty đang trở thành mục tiêu. Hilbert đồng ý. Có vẻ như anh đang biến kĩ năng mình học được từ Ant City thành một doanh nghiệp hoàn toàn đúng pháp luật.

Đến giao thừa năm 2004, điện thoại của Hilbert reo lên. Là Popov gọi. “Anh biết không, tôi có tin mới đây”. Đã có một vụ tấn công lớn, lần này FBI chính là nạn nhân. Popov đang theo dõi một nhóm hacker sử dụng công nghệ tên là X.25, nó được dùng để vận hành các mạng ở thập niên 70 và 80. Tới năm 2004, X.25 đã rất cũ nhưng vẫn còn nhiều doanh nghiệp và đơn vị chính phủ kết nối vào.

Dựa vào lỗ hổng của X.25, nhóm hacker đã đánh vào được một data center (trung tâm dữ liệu) của AT&T ở New Jersey, đây là nơi đặt mail server của rất nhiều cơ quan chính phủ Mỹ. Một trong số đó có FBI, và nhóm người Nga này đã có quyền truy cập vào địa chỉ của mọi nhân viên FBI.

Hilbert nhanh chóng gọi cho sếp của mình và dẫn đầu một cuộc điều tra. Hilbert đồng ý trả cho Cycmos 10.000$ để mua bất kì tài liệu nào bị rò rỉ cũng như biết danh tính của các hacker. Popov đến và đưa ra 2 tài liệu, một trong số đó liên quan tới CarderPlanet và một tài liệu khác về bảo mật. Tất cả đều được đánh dấu là tài liệu mật và không được chuyển qua Internet. Một số trang còn ghi danh tính của hơn 100 hacker đang trong tầm ngắm, nhiều người được đánh dấu là “mục tiêu ưu tiên cao” hoặc “đang phối hợp với chính phủ”. Nhà Trắng cũng được cảnh báo, đưa vụ việc lên tầm cao hơn.

Sau đó, Popov đưa Hilbert vào một phòng chat ngầm và tìm thấy gã lãnh đạo người Nga của nhóm X.25. Rất nhanh chóng, Hilbert bắt đầu nói chuyện với Leonid “Eadle” Sokolov, một sinh viên kĩ thuật ở Saint Petersburg, Nga. Khi được hỏi, Sokolov thừa nhận mình là người đã đột nhập vào AT&T và trộm tài liệu. Vậy là Hilbert đã có được hắn. Đây là vụ án lớn nhất trong sự nghiệp của Hilbert.

Nhưng rồi có một vấn đề nhỏ. Vào ngày 10/2/2005, Hilbert được gọi vào một cuộc họp, ở đó có 5 giám sát viên và một người công tố đang giận dữ qua điện thoại. Hóa ra, cũng có nhiều doanh nghiệp khác bị ảnh hưởng từ vụ X.25, trong số đó có EMC và mã nguồn của phần mềm ảo hóa nổi tiếng VMWare đã bị khai thác. Nếu mã nguồn này lộ ra, hacker từ khắp mọi nơi có thể dò lỗ hổng của nó. Trong trường hợp xấu nhất, hacker có thể thoát ra khỏi máy ảo và đánh vào hạ tầng thật bên dưới.

Với danh nghĩa “Denis Pinhaus”, Popov đã tiếp cận EMC và cảnh báo về vấn đề này. Với mức giá đúng, Popov hứa sẽ không để mã nguồn lọt ra ngoài và cung cấp thông tin kĩ thuật cho EMC về lỗ hổng. Để đảm bảo, anh ta đưa ra liên hệ của E. J. Hilbert để làm tin. EMC khi đó xem lời chào hàng này như là một nỗ lực chống lại luật và đã báo cáo cho văn phòng luật sư. Vụ việc tới tay của Stephen Heymann, một công tố viên “cứng cựa”, người cũng đã thụ lý vụ án Aaron Swartz. Giờ đây, đặc vụ Hilbert đang bị điều tra bởi Bộ tư pháp.

Heymann muốn biết người tên Pinhaus này là ai, và muốn tên thật của hắn để dẫn độ từ Ukraine về Mỹ. Hilbert nói rằng Heymann có thể thoải mái lục tìm hồ sơ của FBI để tìm ra tên thật của Pinhaus, ông cũng có thể thoải mái soạn thảo các đơn kiện với cái tên Pinhaus, nhưng ông sẽ không lấy được thông tin đó từ Hilbert. Rõ ràng, Heymann không hài lòng. Trước đó ông đã từng bỏ tù một nhân viên FBI khác khi cố gắng bảo vệ một kẻ sát nhân để giữ cho hắn ta tiếp tục làm người liên lạc.

Một người giám sát yêu cầu Hilbert rời khỏi phòng. Anh đi tới máy tính của mình và nhắn tin cho Popov. “Anh phải dẹp vụ này ngay, được không? Điều này rất quan rọng. Mọi người đang theo dõi vụ này”.

Sau đó, Hilbert quay trở lại với vụ AT&T. Sokolov bị buộc tội và cảnh báo đã được gửi tới Interpol. Khi Sokolov rời nước Nga và đến nước nào có hiệp định dẫn độ với mình, hắn ta sẽ bị bắt ngay lập tức. Popov được trả tiền và được gửi một bức thư cảm ơn từ FBI để gắn lên website của mình. Tất cả mọi thứ nhanh chóng chìm vào quá khứ.

4 tháng sau, FBI yêu cầu Hilbert cắt mọi liên lạc với Popov và giao nộp 600 trang dữ liệu chat giữa hai người trong vòng 18 tháng qua. Hilbert cũng không còn công tác tại bộ phận tội phạm mạng nữa mà chuyển sang bộ phận chống khủng bố.

Hilbert dần dần nhận ra có gì đó không ổn. Đồng nghiệp ngừng nói chuyện với anh, khi anh nộp đơn vào vị trí giám sát ở Los Angeles thì bị đưa ra khỏi danh sách và được thông báo là không nộp đơn lại. Lúc này, Hilbert mới biết mình đang bị điều tra trong cả năm qua vì tội âm mưa lừa đảo chính phủ, tiết lộ thông tin mật cho bên ngoài (là khi anh nói cho Popov về vụ EMC).

Hilbert cảm thấy tuyệt vọng. FBI là công việc mơ ước của anh, nhưng vụ việc đã chấm dứt tất cả. Anh còn có 2 đứa con ở nhà và một đứa thứ 3 sắp ra đời. Anh dần dần tìm việc ở các công ty tư nhân và đến tháng 2/2007, anh chính thức nghỉ việc ở FBI.


Mọi chuyện kết thúc…

Khi Popov gọi lại cho Hilbert, lúc đó anh đang làm ở vị trí tư vấn viên. Trong hơn 6 năm kể từ lần cuối họ nói chuyện, Hilbert mới nhận lại được cuộc gọi từ một người “quen”. Lần này, Popov không có thông tin rò rỉ hay bất kì thứ gì khác, anh chỉ nói lời cảm ơn. “Anh ấy gọi tên để cảm ơn về cách tôi đối xử với ảnh trong thời gian ở tù. Giờ anh ấy đã về nhà, thay đổi cuộc sống, lập gia đình. Anh ấy nợ tôi tất cả”.

Vụ điều tra lúc đó vẫn chưa kết thúc. Đã có lúc các nhà điều tra đến tận văn phòng anh để đặt câu hỏi. Năm 2009, Hilbert được tuyên miễn tội khi Bộ tư pháp hủy các cáo buộc.

Nhưng có một thông tin mà sau này người ta mới biết, đó là EMC đã âm thầm trả cho Popov 30.000$ để lấy thông tin về lỗ hổng, đồng thời hứa trả thêm 40.000$ nữa trong vòng 4 năm sau nếu mã nguồn không bị phát tán. Popov giữ đúng lời hứa, nhưng khi yêu cầu EMC trả số tiền còn lại thì EMC đã vờ như không có gì xảy ra.

Vậy là Popov quyết định trả thù. Popov tạo một danh tính online mới là “Hardcore Charlie” và ngày 23/4/2012, 520 dòng code đầu tiên của VMWare xuất hiện. Nhiều chức năng của nó vẫn còn xuất hiện trong các sản phẩm VMWare đến tận ngày nay. Lúc này, EMC mới đi thuê tất cả những chuyên gia bảo mật mà họ có thể tìm được để vá hết các lỗ hổng. 10 ngày sau đó, bản cập nhật đầu tiên được phát hành. Khi Popov đưa ra một số lượng code lớn hơn vào tháng 11/2012 thì tất cả lỗ hổng quan trọng đều đã được bít lại.

Popov cũng thừa nhận rằng anh chính là người đứng sau vụ X.25 cùng với Sokolov. Ban đầu, cả hai chỉ định đòi 150.000$ từ AT&T để giữ bí mật về vụ việc nhằm tránh ảnh hưởng tới các hợp đồng với chính phủ. Chỉ khi AT&T từ chối trả tiền thì Popov mới gọi cho FBI. Popov nói anh không cố ý để Hilbert dính vào vụ lừa này. Anh ấy vẫn nhớ về ngày lễ tạ ơn năm 2002, về con gà tây, về bộ phim. “Anh ấy là người bạn duy nhất mà tôi có. Tôi vẫn quý anh ấy, ngay cả khi giờ đây anh ấy không còn ở gần tôi nữa. Tôi vẫn là một hacker mũ đen, và tôi không bao giờ thay đổi. Nhưng ai quan tâm chứ? Tôi vẫn quý anh ấy.” – Popov nói về Hilbert.


Nguồn: Wired

64 Online Resources to Learn to Code for Free

Get Our FREE Ultimate Guide to Coding for Beginners






1. Codecademy

Codecademy is where most people who are new to coding get their start. If you haven’t been to the site yet…where have you been!? The platform revolves around interactive learning; that is, you read a little, type your code right into the browser, and see results immediately.

Topics taught: HTML & CSS, JavaScript, PHP, Python, Ruby, Angularjs, The Command Line, and more

2. Codewars

Codewars offers a fun way to learn coding. With a martial-arts theme, the program is based on challenges called “kata.” Complete them to earn honor and progress to higher ranks.

Topics taught: CoffeeScript, JavaScript, Python, Ruby, Java, Clojure, and Haskell

3. Coursera

Large online course library, where classes are taught by real university professors. All courses are free of charge, but you have the option to pay for a “Coursera Verified Certificate” to prove course completion. These cost between $30 and $100 depending on the course. Coursera also now has specializations, which you do have to pay for.

Topics taught: Many (far beyond your basic coding/computer science)

4. edX

An open-source higher education program governed by MIT and Harvard. Offers 107 courses under the “computer science” category, teaching various coding languages.

Topics taught: Java, C#, Python, and many more

5. Free Code Camp

Teaches coding first through an established curriculum, then by giving you hands-on experience working on projects for nonprofits.

Topics taught: HTML, CSS, Bootstrap, JavaScript, Databases, DevTools, Node.js, React.js, and D3.js

6. GA Dash

General Assembly’s free online learning platform. Entirely project-based. You build a “project” with each walk-through.

They are one of the very few options that have a course on how to build a Tumblr theme from scratch.

Topics taught: HTML, CSS, JavaScript, and responsive design

7. Khan Academy

Tons of subjects (as their front page says, “You can learn anything”), including many on computer programming. A few courses are offered for younger kids, too.

Topics taught: Many

8. MIT OpenCourseware

Competition to get into MIT may be stiff, but accessing their course material has no minimum SAT score. They maintain an online library of every subject they teach, with no account required for access.

Topics taught: Many

9. The Odin Project

Made by the creators of Viking Code School—a premiere online coding bootcamp. The Odin Project is their free version. FYI: you can also work with others in in-person or online study groups.

Topics taught: HTML, CSS, JavaScript & jQuery, Ruby programming, Ruby on Rails

10. Udacity

Offers individual courses, as well as “nanodegrees” that train you for specific careers like front-end web developer or data analyst. Some course materials are free, but nanodegrees require a tuition fee.

Topics taught: Many

11. Udemy

Paid and free courses on a variety of subjects, including web development, programming, datascience, and more. Courses can be created by anyone, so make sure to read reviews. Coupons can also be easily found, too. Check out some of their top development courses here.

Topics taught: Many

12. The Code Player

A compilation of video tutorials to help you walk through a process from start to finish. Good for learning “smaller” projects or tasks one at a time.

Topics taught: HTML5, CSS3, Javascript, Regex, JQuery

YouTube Channels

13. Coder’s Guide

Features numerous series of videos on coding topics: a 19-video series on JavaScript, another 19 videos on HTML/CSS, and more.

Topics taught: HTML, CSS, JavaScript, Bootstrap, WordPress, iOS and Android, and more

Subscribers: 44,215

14. DevTips

One of Travis Neilson’s YouTube channels. Focuses on web design and web development, with occasional live Q&As.

Topics taught: HTML, CSS, responsive design, development advice

Subscribers: 82,907


My personal favorite. Web-development-focused videos made by Will Stern.

Topics taught: Sublime Text, Responsive Design, Node.js, Angular.js, Backbone.js, deployment strategies, and more

Subscribers: 154,590

16. thenewboston

Over 4,000 videos on a range of programming languages, game development, and design. Has over one million subscribers.

Topics taught: Android development, C programming, MySQL, Python, and more.

Subscribers: 1,131,977

For a more comprehensive list of 33 YouTube channels where you can learn to code, look here.


17. A List Apart

Lots of authors. They write books, have events, and run a great development and design blog. See all code topics here.

18. CSS-Tricks

Goes deep into CSS with their big, bad CSS almanac. However, the blog now goes beyond just CSS and talks about other things like Sass, JavaScript, PHP, and more. Explore tons of resources and check out their code snippets.

19. David Walsh

Run by David Walsh (a senior developer at Mozilla), although there are others who write on the site too. Tutorials, how-tos, demos, and more.


Covers lots of topics related to web development and workflow. To name a few: Angular, Node.js, Laravel, Sublime Text, and more.

21. SitePoint

They have lots of writers and publish often. Topics range from HTML and CSS to entrepreneurship. SitePoint now also has paid books and courses on their child site Learnable.

22. Tuts+

Tons of free tutorials, as well as paid options like actual courses. Has over 570 expertly-instructed video courses (on all topics, not just computer-related). Also publishes eBooks.

The Command Line

23. Command Line Power User

Free video series created by Wes Bos. More at an intermediate level, so not for total newbies.

24. Conquering the Command Line

Free online book by Mark Bates. Very in-depth. Can purchase hard copy and screencasts.

25. Learn Command Line the Hard Way

Free online book by Zed Shaw. (My personal favorite command line resource.)

Git and GitHub

26. Try Git

An interactive series of challenges to learn about and experiment with Git. Created by Code School.

27. Git Immersion

A guided tour to teach you the basics of Git. Set preferences and create your own projects.


28. Skillcrush’s Coding Bootcamp

Skillcrush’s free coding bootcamp is a perfect place to start for absolute newbies. You’ll learn what it means to work in tech, get digestible definitions of common industry lingo, and get the chance to write your first lines of code.

29. Learn CSS Layout

This website will teach you CSS fundamentals that are used in setting up a website’s layout. It’s best for those who already have basic HTML and CSS know-how.


For beginners. Broken down into four chapters: The web, HTML5, CSS3, and Sass. It’s like an online ebook, but under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. So you can adapt it for your needs.

31. Mozilla Developer Network

Free documentation on HTML and CSS (also JavaScript). Has tutorials for people of different levels, introductory to advanced.

32. HTML5 Dog

HTML beginner tutorial here. (They also offer intermediate and advanced HTML tutorials.) And ones on CSS.


33. Eloquent Javascript

Another online book, longer than most. It has big-tech financial backers like Mozilla and Hack Reactor (“the Harvard of coding bootcamps”).


Created by Code School. Quick and perfect for absolute beginners. (Warning: JS in real life is a lot tougher.) 9 mini-lessons. At the end, it points you to more in-depth JS learning materials.

35. JavaScript for Cats

It’s like a single-webpage book broken down into sections. Created by programmer Max Ogden. Filled with non-cat gifs but has cat pics at the end. Just because. Lol.

36. Learn JS

Go through lessons, type in the window at the bottom. Created by the same folks who make

37. NodeSchool

Has in-person workshops and events all over the world, as well as an active web presence. See online tutorials here.

38. That JS Dude

A website that teaches JavaScript. Specifically this, scope, hoisting, closures, inheritance, and more. It relies on videos as well as text to explain concepts. Created by @mdkhan005.

39. The Node Beginner Book

Written by Manuel Kiessling, this book targets people who have some experience in other programming languages. While the free version online is a shortened version of the full book, it still teaches a lot about Node.



Recordings of live WordCamp lectures around the world. Created by Automattic.

41. WPBeginner

Website for beginner WP users. Great WP glossary of terms, plus coupon deals, video tutorials, and a blog which publishes useful articles by different authors.


42. A Byte of Python

Free online book for beginners. Can choose to download it as a PDF for free or invest in the hard copy.


Interactive online tutorial to learn Python coding. Has a little window at the bottom where you can write your code as you go through the lessons.

44. Learn Python The Hard Way (Website)

The book costs money, but the website is free. Written by Zed Shaw. (I used the book when I first started learning.)

45. Python Spot

Beginner and intermediate Python tutorials. Most come in a written form. There’s also some tutorials on game development, databases, and more. All using Python, of course.


46. Learn Ruby the Hard Way

Free HTML version of the book online. Buying the hard copy also gets you access to videos. Another book written by Zed Shaw.

47. Rails For Zombies

An interactive way to learn Ruby on Rails right in your browser. (This is a better choice for people who know some Ruby already.) Created by Code School.

48. Rails Tutorial

12-chapter book by Michael Hartl. Can purchase ebooks, screencasts from author, and more. Or just read it for free online.

49. RubyMonk

Entirely free, though you have the option to donate. Based on interactive tutorials, where you read a lesson and type in code. Lastly, “run” it. RubyMonk has one beginner course option, two intermediate, and one advanced.

50. Try Ruby

Also created by Code School, this is a better option for beginners. Type into an in-browser prompt window as you go through the exercises.


51. Learn SQL the Hard Way

Another resource created by Zed Shaw. This free online book takes you through 33 exercises. By the end, you should understand SQL, how to design data, and know a bit about database optimization. You don’t need to know how to program to work through the book, but it helps.

52. MongoDB University

Courses on MongoDB. Lessons come in video form. There are also quizzes and graded exercises along the way. Courses last seven weeks, but you can work through at your own pace. As of now, 200,000+ people have already taken courses on MongoDB University.


Offers a range of MySQL tutorials including how to use MySQL as a developer and database administrator. They offer over ten different MySQL tutorials in total.

54. SQL for Web Nerds

Free digital book created by renowned computer science professor at MIT, Philip Greenspun. It contains 16 sections including data modeling, simple queries, transactions, trees, and more.

55. Vertabelo

This free platform has three different SQL courses: SQL Queries, Operating on Data in SQL, and Creating Tables in SQL. On Vertabelo you’ll learn in an interactive code editor, table, and console.

Design/User Experience

56. HackDesign

HackDesign is, “an easy to follow design course for people who do amazing things.” There are 50 lessons total, all taught by different instructors. Topics include typography, interaction design, front-end design, and more. You can get a design lesson delivered to your inbox once a week or you can view all the lessons on their site.

57. UX Apprentice

Created by Theresa Neil and the team at Balsamiq. This is like a UX 101 course — perfect for beginners. Three main parts: discovery, strategy, and design. As you go through, you are quizzed and shown related resources.

58. UXPin

While UXPin has paid offerings, there are a variety of free UX books available on the site. All you need to do is provide your email to access the material. They have books on minimalism, color theory, flat design, interaction design, and more.

Online Communities

59. CodeBuddies

Learn with others in peer-to-peer organized Google Hangouts. Great for those who want to study with others or do pair programming. CodeBuddies also has a Slack chatroom as well as Facebook group where people can congregate and ask questions.

60. CodeNewbie

CodeNewbie has a variety of tools for beginners including a Slack community where you can ask questions, a Twitter chat every Wednesday, a weekly podcast, and more. Now there are also some in-person meetups – like in Atlanta.

61. Newbie Coder Warehouse

Full disclosure: Newbie Coder Warehouse is my Facebook group of 2,200+ self-taught coders (and counting!). It’s a great place to ask questions as well as connect with others. And it’s super simple to join: all you need is a Facebook profile!

In-Person Workshops

62. codebar

codebar’s goal is enable underrepresented groups to learn how to code. They do this by offering free weekly workshops and events. Keep in mind codebar is based in the UK.

63. Girl Develop It

Girl Develop It (GDI) has chapters across the US and Canada. While most of GDI’s in-person workshops cost money, all of their course materials are readily available online for free. GDI also has free events, like their Code & Coffee meetup.

64. Women Who Code

Women Who Code is a non-profit with networks around the world. They have different events and workshops, all relating to code.

What’s next?

Relying on free courses and books is great when you’re just starting out. However, they can only get you so far.

Once you have the basics down, you’ll want to explore other options – like the Skillcrush Blueprints. If you’re brand new to the Skillcrush blog (welcome!) make sure to check out the free 10-day coding bootcamp. It’s the perfect way to test the waters, and see what Skillcrush is all about!


Laurence is a self-taught freelance web developer, focusing primarily on front-end technologies. In her spare time she manages, a blog geared to beginners teaching themselves how to code. Laurence is addicted to side projects and travel.




Python & Java: A Side-by-Side Comparison

Python Conquers The Universe

I wrote this little piece a long time ago — it was last updated in May 2007. In 2009 I moved it from my website to this blog. At this point I consider it an historical artifact, in the sense that I consider it frozen; I’m no longer going to update it when, for example, Java acquires a new programmer-friendly feature.

During the years when it was on my web site, I received a number of email comments. I responded to them all, but no one — other than their authors and me — ever saw the comments and my responses. By moving this piece onto a blog, I hope that folks who feel like commenting can do so more easily, and can share their comments with a wider audience.

During the years when it was on my web site, virtually all of the comments that I received were from…

View original post 2,238 more words

Python or Ruby: 6 Months on Hacker News

peak 5390

Front-page presence of Python and Ruby articles on Hacker News for the last 6 months. Front-page presence of Python and Ruby articles on Hacker News for the last 6 months.

I teach high school math and science, and over the last couple years I have started to teach an Introduction to Programming class.  This past spring I decided to reassess whether I should continue to base this class in Python.  I wrote a script to examine the presence of Python and Ruby on the front page of Hacker News, and the results of this investigation led me to stay with Python.  The script I wrote has been running for six months now, so I decided to take a look at the results once again.

I want to make sure I continue to teach a language that gives students a solid grounding in modern programming concepts and practices, not just whatever language I know best.  I was originally prompted to reexamine my language choice after…

View original post 350 more words

Applications Written in Python


See also:


  • FreeCAD is an Open Source CAx RAD based on Open Cascade, Qt and Python. It features some key concepts like Macro recording, Workbenches, ability to run as a server and dynamically loadable Application extensions and its designed to be platform independent…

  • Fandango is planned to be a full featured CAD program. It has a C++ core extensible by scripts. Currently the memory core for entity management is ready, scripting works wonderfully thanks to the ease of embedding and extending of Python. A KDE+XML user interface is now in place, controlling the keyboard and mouse.

  • PythonCAD is a CAD package written, surprisingly enough, in Python. The PythonCAD project aims to produce a scriptable, open-source, easy to use CAD package for Linux, the various flavors of BSD Unix, commercial Unix, and other platforms to which someone who is interested ports the program. Work began on PythonCAD in July, 2002, and the first public release was on December 21, 2002. In addition it has been ported to winXP

  • Blender is the free open source 3D content creation suite, available for all major operating systems under the GNU General Public License. It only uses Python as a scripting language, however.

  • Vintech RCAM is a CAD/CAM system for true shape nesting and NC programming of laser, plasma, oxy-fuel and water-jet cutting machines. Vintech RCAM is platform independent and now it runs under Windows XP, Windows 7 and Linux. The main programing language of the system is Python, which defines the advanced methodology and the dynamic system development. More information

Audio/Video Applications

Console Applications

  • IPython – An enhanced Interactive Python shell

  • SQLPython – interactive Oracle database client (alternative to Oracle’s SQL*Plus)

  • See also PythonShells.

Enterprise Applications

  • OpenERP – A complete open source ERP & CRM; accounting, stock management, sales, and modular framework with over 750 modules. Originally called tinyErp, there is also a variant for Medical… see

  • Tryton – a fork of Tiny ERP providing a three-tier high-level general purpose application platform

  • Picalo – A data analysis toolkit for DBMS-type of data. Includes embedded Python scripting and wxWidgets GUI.

  • LinOTP 2 – a flexible and modular solution for strong two-factor authentication with one time passwords (OTP). Due to the modular architecture several OTP tokens and different OTP algorithms are supported.

  • RESTx – a RESTful, GPL licensed open-source data publishing and integration platform, which emphasizes simplicity, sane defaults and out-of-the-box usability. No complex configuration, no steep learning curve, instead up and running in 5 minutes. Components for data access or integration logic can be easily written in Python and Java, users create their own RESTful resources by posting parameters for those components or just filling out a small form in their browser.

File Formats

Image Applications

  • Gnofract 4D – A flexible fractal generation program

  • Gogh – A PyGTK-based painting program (or image editor) with support for pressure-sensitive tablets/devices. This application appears to no longer exists.

  • imgSeek – Photo collection manager with content-based search. You simply sketch the image you want to find.

  • MayaVi – Scientific visualization program based on VTK

  • VPython – Navigable 3D animations are produced as side effects of computations, making a normally difficult task exceptionally easy. The new 5.0 release candidate offers opacity, local lights, and materials such as wood.

Internet Applications

Mobile Applications

  • Aarlogic C05/3 – Ready to use GSM /GPS tracking PCB with Python engine on board with support of test server based on Google Maps

  • AppBackup – an app for jailbroken iOS devices that lets one back up and restore the settings and data of App Store apps

  • Pyroute – a GPS-capable mapping/routing application for mobile devices

Office Applications

Personal Information Managers

Science and Education Applications

  • Pyrobot – A complete IDE, set of libraries, simulator, and course materials for exploring robotics in Python. Currently aimed for higher education, but work has begun for use in k-12 as well.

  • SimPy – a discrete event, object-oriented, simulation package,

  • PyChem – a multivariate data analysis application for Windows and Unix, including principal components analysis (PCA), partial least squares regression (PLSR) and discriminant analysis (PLS-DA), discrimiant function/canonical correlation analysis (DFA/CVA/CCA), cluster analysis (K-means, HCA), advanced evolutionary methods for variable selection.

  • ACQ4 – Neurophysiology data acquisition and analysis with emphasis on electrophysiology, photostimulation, and fluorescence imaging experiments.

  • MetaPath – A workflow-based metabolomics data analysis package. Includes support for principal components analysis (PCA), partial least squares regression (PLSR) and discriminant analysis (PLS-DA), metabolic pathway mining and data visualisations.

Software Development

System Administration Applications

  • Enomalism – The Enomalism Virtualized Management Console (VMC) is a open source web-based systems administrator management tool for XEN hypervisor. Servers with hundreds of multiple isolated virtualized systems can be managed like a standalone server. Enomalism also includes a virtual server creation wizard and templates to facilitate virtualized server configuration, application deployment and centralized software patch management.

  • radiusContext – RADIUS log analysis program (user accounting for ISPs)

  • Salt Stack – A high-performance remote execution and configuration management engine.

X-Window Manager

  • PLWM – The Pointless Window Manager: a python toolkit for making a wm. It’s hostile towards rodents, and ease of configuration is not an objective, not so actively developed, but might be usefull for keyboard-loving hackers. Somebody might even have a use for the code, though PyWM’s ideas seem better.

  • PyWM – a small, simple python-programmable X window manager that’s packed with features yet very easy to learn and use. up-to-date),


  • Calix – An xwindows gamma calibration tool using Py-GTK and the xgamma command. (this link do not contain anymore information)

  • CD-Store – a data cd archiving (indexing) with full search and browse capabilities using a Py-GTK interface (this link do not contain anymore information)

  • ruleCore – A reactive event-driven rule engine for event pattern detection

  • L.I.S.A – The L.I.S.A project is a Digital Life Assistant for a house. You can ask things to LISA by voice or by text and LISA will execute some actions and/or answers you. LISA can control a home automation system to have an artifical intelligence in the house.

Editorial Notes

The above lists should be arranged in ascending alphabetical order – please respect this when adding new entries. If, as the developer of a listed application, you disagree with the classification of the work, please move it into the appropriate category or create a new category, respecting the ascending alphabetical order of the categories. When specifying release dates please use the format YYYY-MM-DD.

From :

List of Python software

From Wikipedia, the free encyclopedia

The Python programming language is actively used by many people, both in industry and academia for a wide variety of purposes.

Integrated development environments for Python

Python package managers and Python distributions

  • Anaconda, Python distribution with conda package manager
  • Enthought, Enthought Canopy Python with Python package manager
  • pip, package management system used to install and manage software packages written in Python
  • Python(x,y) a “free scientific and engineering development software for numerical computations, data analysis and data visualization based on Python programming language, Qt graphical user interfaces and Spyder interactive scientific development environment.”[1]


Web applications

  • ERP5, a powerful open source ERP / CRM used in Aerospace, Apparel, Banking and for e-government
  • Gate One, an open source terminal emulator and SSH client
  • GNU Mailman, one of the more popular packages for running email mailing lists
  • MoinMoin, a wiki engine
  • OpenERP, new name Odoo, an open source comprehensive suite of business applications
  • Planet, a feed aggregator
  • Plone, an open source content management system
  • Pyrat is a Laboratory Animal Facility Management Software (or Lab Animal Colony Management Software) written in Python. Its name means “Python based Relational Animal Tracking”
  • Roundup, a bug tracking system
  • Tor2web, an HTTP proxy for Tor Hidden Services (HS)
  • Trac, web-based bug/issue tracking database, wiki, and version control front-end
  •, a discontinued social media site for interactively sharing music[citation needed]
  • ViewVC, a web-based interface for browsing CVS and SVN repositories

Video games

Web frameworks

  • CherryPy, an object-oriented web application server and framework
  • Django, an MVC (model, view, controller) web framework
  • Bottle, A fast, simple and lightweight WSGI micro web framework
  • Flask, a modern, lightweight, well-documented microframework based on Werkzeug and Jinja 2
  • Google App Engine, a platform for developing and hosting web applications in Google-managed data centers, including Python.
  • Pylons, a lightweight web framework emphasizing flexibility and rapid development
  • Pyramid, is a minimalistic web framework inspired by Zope, Pylons and Django
  • Quixote, a framework for developing Web applications in Python
  • Topsite Templating System, another Python-powered web framework
  • TurboGears, a web framework combining SQLObject/SQLAlchemy, Kid/Genshi, and CherryPy/Pylons
  • web2py, a full-stack enterprise web application framework, following the MVC design
  • Zope, an application server, commonly used to build content management systems
  • Tornado, a lightweight non-blocking server and framework

Graphics frameworks

UI frameworks

  • Kivy, open source Python library for developing multitouch application software with a natural user interface (NUI).
  • PyGTK, a popular cross-platform GUI library based on GTK+; furthermore, other GNOME libraries also have bindings for Python
  • PyQt, another cross-platform GUI library based on Qt; as above, KDE libraries also have bindings
  • PySide, an alternative to the PyQt library, released under the BSD-style licence
  • Tkinter is Python’s de facto GUI it is shipped in most versions of Python and is integrated in the IDLE. It is based Tcl command tool.
  • wxPython, a port of wxWidgets and a cross-platform GUI library for Python

Scientific packages

  • Astropy, a library of Python tools for astronomy and astrophysics.
  • Biopython, a Python molecular biology suite
  • graph-tool, a Python module for manipulation and statistical analysis of graphs.
  • Pathomx, a workflow-based metabolomics analysis tool.
  • NetworkX, a package for the creation, manipulation, and study of complex networks.
  • SciPy, a library of scientific and numerical routines
  • scikit-learn, a library for machine learning.
  • scikit-image, a library for image processing.
  • SymPy, a symbolic calculation package
  • Veusz, a scientific plotting package
  • VisTrails, a scientific workflow and provenance management software with visual programming interface and integrated visualization (via Matplotlib, VTK).

Mathematical libraries

  • Matplotlib, an extension providing MATLAB-like plotting and mathematical functions
  • Plotly is a scientific plotting library for creating browser-based graphs.
  • NumPy, a language extension that adds support for large and fast, multi-dimensional arrays and matrices
  • Sage is a large mathematical software application which integrates the work of nearly 100 free software projects and supports linear algebra, combinatorics, numerical mathematics, calculus, and more.
  • SymPy, a symbolic mathematical calculations package

Additional development packages

  • Cheetah, a Python-powered template engine and code-generation tool
  • Construct, a python library for the declarative construction and deconstruction of data structures
  • IPython, a development shell both written in and designed for Python
  • Jinja, a Python-powered template engine, inspired by Django‘s template engine
  • mod python, an Apache module allowing direct integration of Python scripts with the Apache web server
  • PYthon Remote Objects, a Distributed Object Technology
  • PyObjC, a Python to Objective-C bridge that allows writing Mac OS X software in Python
  • Setuptools, a package development process library designed to facilitate packaging Python projects by enhancing the Python distutils (distribution utilities) standard library.
  • Sphinx (documentation generator), which converts reStructuredText files into HTML websites and other formats including PDF, EPub and Man pages
  • Twisted, a networking framework for Python
  • VPython, the Python programming language plus a 3D graphics module called Visual

Embedded as a scripting language

Python is, or can be used as the scripting language in these software products.

Commercial uses

  • CCP hf uses Stackless Python in both its server and client side applications for its MMO Eve Online[5]
  • Google uses Python for many tasks including the backends of web apps such as Google Groups, Gmail, and Google Maps, as well as for some of its search-engine internals [6]
  • NASA is using Python to implement a CAD/CAE/PDM repository and model management, integration, and transformation system which will be the core infrastructure for its next-generation collaborative engineering environment[citation needed]. It is also the development language for OpenMDAO, a framework developed by NASA for solving multidisciplinary design optimization problems.
  • reddit was originally written in Common Lisp, but was rewritten in Python in 2005[7]
  • Yahoo! Groups uses Python “to maintain its discussion groups”[citation needed]
  • YouTube uses Python “to produce maintainable features in record times, with a minimum of developers”[6]
  • Enthought uses python as the main language for countless custom applications in Geophysics, Financial applications, Astrophysics, simulations for consumer product companies, …
  • EDF uses Python for their finite element solver Code Aster in combination with Fortran

Python implementations

  • ActivePython, the Python implementation from ActiveState, includes a Windows Script Host scripting engine called PythonScript. Scripts written in PythonScript have the default file name extension of .pys.
  • CPython – the reference implementation, written in C89.
  • CLPython Common Lisp
  • Cython is a programming language to simplify writing C and C++ extension modules for the CPython Python runtime.
  • IronPython – Python for .NET and Mono platforms
  • Jython – Python coded in Java
  • Parrot – virtual machine being developed mainly as the runtime for Perl 6, but with the intent to also support dynamic languages like Python, Ruby, Tcl, etc.
  • Psyco – not an implementation, but JIT compiler for CPython
  • PyPy – Python (originally) coded in Python, used in conjunction RPython, a restricted subset of Python that is amenable to static analysis and therefore aJIT.
  • Stackless Python – Python with coroutines
  • Unladen Swallow – the Python implementation from the Google team


External links