SolveSpace is a free libre and open source 2D and 3D CAD program. It is a constraint-based parametric modeler with simple mechanical simulation capabilities. Version 2.1 onward runs on Windows and macOS. It is developed by a community of volunteers. Applications include: Modeling 3D parts – Draw with extrudes and Boolean operations Modeling 2D parts – Draw the part as a single section, export as a DXF, PDF or SVG. Files to open need to be in its own text-based SolveSpace Models format. Various export formats are provided, including 2D vector drawing as DXF, EPS, PDF, SVG, HPGL, STEP. A brief review and interview with the developer appeared in Libre Graphics World; this review praises SolveSpace for its small executable file size, its advanced constraints solver and range of output formats. The same review notes some drawbacks its slow and limited processing of NURBS booleans and lack of native Linux support. However, native Linux support has since been added. A third-party video demonstration by Chris Madsen for an earlier version of SolveSpace is available on YouTube as Using SolveSpace to draw Sonex flap detent.
A series of SolveSpace video tutorials has been produced by Eric Buijs. Further tutorials are available on the SolveSpace website. A previous software package called SketchFlat developed by Westhues, has been replaced by SolveSpace. List of computer-aided design editors for architecture and construction Comparison of CAD editors for CAE Official website solvespace on GitHub
Open-source hardware consists of physical artifacts of technology designed and offered by the open-design movement. Both free and open-source software and open-source hardware are created by this open-source culture movement and apply a like concept to a variety of components, it is sometimes, referred to as FOSH. The term means that information about the hardware is discerned so that others can make it – coupling it to the maker movement. Hardware design, in addition to the software that drives the hardware, are all released under free/libre terms; the original sharer gains feedback and improvements on the design from the FOSH community. There is now significant evidence that such sharing can drive a high return on investment for the scientific community. Since the rise of reconfigurable programmable logic devices, sharing of logic designs has been a form of open-source hardware. Instead of the schematics, hardware description language code is shared. HDL descriptions are used to set up system-on-a-chip systems either in field-programmable gate arrays or directly in application-specific integrated circuit designs.
HDL modules, when distributed, are called semiconductor intellectual property cores known as IP cores. Open-source hardware helps alleviate the issue of proprietary device drivers for the free and open-source software community, however, it is not a pre-requisite for it, should not be confused with the concept of open documentation for proprietary hardware, sufficient for writing FLOSS device drivers and complete operating systems; the difference between the two concepts is that OSH includes both the instructions on how to replicate the hardware itself as well as the information on communication protocols that the software must use in order to communicate with the hardware, whereas open-source-friendly proprietary hardware would only include the latter without including the former. The first hardware focused "open source" activities were started around 1997 by Bruce Perens, creator of the Open Source Definition, co-founder of the Open Source Initiative, a ham radio operator, he launched the Open Hardware Certification Program, which had the goal of allowing hardware manufacturers to self-certify their products as open.
Shortly after the launch of the Open Hardware Certification Program, David Freeman announced the Open Hardware Specification Project, another attempt at licensing hardware components whose interfaces are available publicly and of creating an new computing platform as an alternative to proprietary computing systems. In early 1999, Sepehr Kiani, Ryan Vallance and Samir Nayfeh joined efforts to apply the open-source philosophy to machine design applications. Together they established the Open Design Foundation as a non-profit corporation and set out to develop an Open Design Definition, but most of these activities faded out after a few years. By the mid 2000s open-source hardware again became a hub of activity due to the emergence of several major open-source hardware projects and companies, such as OpenCores, RepRap, Arduino and SparkFun. In 2007, Perens reactivated the openhardware.org website. Following the Open Graphics Project, an effort to design and manufacture a free and open 3D graphics chip set and reference graphics card, Timothy Miller suggested the creation of an organization to safeguard the interests of the Open Graphics Project community.
Thus, Patrick McNamara founded the Open Hardware Foundation in 2007. The Tucson Amateur Packet Radio Corporation, founded in 1982 as a non-profit organization of amateur radio operators with the goals of supporting R&D efforts in the area of amateur digital communications, created in 2007 the first open hardware license, the TAPR Open Hardware License; the OSI president Eric S. Raymond expressed some concerns about certain aspects of the OHL and decided to not review the license. Around 2010 in context of the Freedom Defined project, the Open Hardware Definition was created as collaborative work of many and is accepted as of 2016 by dozens of organizations and companies. In July 2011, CERN released an open-source hardware license, CERN OHL. Javier Serrano, an engineer at CERN's Beams Department and the founder of the Open Hardware Repository, explained: "By sharing designs CERN expects to improve the quality of designs through peer review and to guarantee their users – including commercial companies – the freedom to study and manufacture them, leading to better hardware and less duplication of efforts".
While drafted to address CERN-specific concerns, such as tracing the impact of the organization’s research, in its current form it can be used by anyone developing open-source hardware. Following the 2011 Open Hardware Summit, after heated debates on licenses and what constitutes open-source hardware, Bruce Perens abandoned the OSHW Definition and the concerted efforts of those involved with it. Openhardware.org, led by Bruce Perens and identifies practices that meet all the combined requirements of the Open Source Hardware Definition, the Open Source Definition, the Four Freedoms of the Free Software Foundation Since 2014 openhardware.org is not online and seems to have ceased activity. The Open Source Hardware Association at oshwa.org proposes Open source hardware and acts as hub of open source hardware activity of all genres, while cooperating with other entities suc
GitHub is a web-based hosting service for version control using Git. It is used for computer code, it offers all of the distributed version control and source code management functionality of Git as well as adding its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, wikis for every project. GitHub offers plans for enterprise, team and free accounts which are used to host open-source software projects; as of January 2019, GitHub offers unlimited private repositories to all plans, including free accounts. As of June 2018, GitHub reports having over 28 million users and 57 million repositories, making it the largest host of source code in the world. GitHub was developed by Chris Wanstrath, P. J. Hyett, Tom Preston-Werner and Scott Chacon using Ruby on Rails, started in February 2008; the company, GitHub, Inc. is located in San Francisco. On February 24, 2009, GitHub team members announced, in a talk at Yahoo! headquarters, that within the first year of being online, GitHub had accumulated over 46,000 public repositories, 17,000 of which were formed in the previous month alone.
At that time, about 6,200 repositories had been forked at least. On July 5, 2009, GitHub announced. On July 27, 2009, in another talk delivered at Yahoo!, Preston-Werner announced that GitHub had grown to host 90,000 unique public repositories, 12,000 having been forked at least once, for a total of 135,000 repositories. On July 25, 2010, GitHub announced. On April 20, 2011, GitHub announced. On June 2, 2011, ReadWriteWeb reported that GitHub had surpassed SourceForge and Google Code in total number of commits for the period of January to May 2011. On July 9, 2012, Peter Levine, general partner at GitHub investor Andreessen Horowitz, stated that GitHub had been growing revenue at 300% annually since 2008 "profitably nearly the entire way". On January 16, 2013, GitHub announced it had passed the 3 million users mark and was hosting more than 5 million repositories. On December 23, 2013, GitHub announced. In June 2015, GitHub opened an office in Japan, its first office outside of the U. S. On July 29, 2015, GitHub announced it had raised $250 million in funding in a round led by Sequoia Capital.
The round valued the company at $2 billion. In 2016, GitHub was ranked No. 14 on the Forbes Cloud 100 list. On February 28, 2018, GitHub fell victim to the second largest distributed denial-of-service attack in history, with incoming traffic reaching a peak of about 1.35 terabits per second. On June 4, 2018, Microsoft announced it had reached an agreement to acquire GitHub for US$7.5 billion. The purchase closed on October 26, 2018. On June 19, 2018, GitHub expanded its GitHub Education by offering free education bundles to all schools. On June 4, 2018, Microsoft announced its intent to acquire GitHub for US$7.5 billion, the deal closed on Oct. 26, 2018. GitHub will continue to operate independently as a community and business. Under Microsoft, the service will be led by Xamarin's Nat Friedman, reporting to Scott Guthrie, executive vice president of Microsoft Cloud and AI. Current CEO Chris Wanstrath will be retained as a "technical fellow" reporting to Guthrie. Microsoft had become a significant user of GitHub, using it to host open source projects and development tools such as Chakra Core, PowerShell, Visual Studio Code, has backed other open source projects such as Linux, developed Git Virtual File System—a Git extension for managing large-scale repositories.
GitHub, Inc. was a flat organization with no middle managers. Employees can choose to work on projects. However, salaries are set by the chief executive. In 2014, GitHub, Inc. introduced a layer of middle management. GitHub.com was a start-up business, which in its first years provided enough revenue to be funded by its three founders and start taking on employees. In July 2012, four years after the company was founded, Andreessen Horowitz invested $100 million in venture capital. In July 2015 GitHub raised another $250 million of venture capital in a series B round. Investors were Andreessen Horowitz, Thrive Capital and other venture capital funds; as of August 2016, GitHub was making $140 million in Annual Recurring Revenue. GitHub's m
C++ is a general-purpose programming language, developed by Bjarne Stroustrup as an extension of the C language, or "C with Classes". It has imperative, object-oriented and generic programming features, while providing facilities for low-level memory manipulation, it is always implemented as a compiled language, many vendors provide C++ compilers, including the Free Software Foundation, Intel, IBM, so it is available on many platforms. C++ was designed with a bias toward system programming and embedded, resource-constrained software and large systems, with performance and flexibility of use as its design highlights. C++ has been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications, including desktop applications and performance-critical applications. C++ is standardized by the International Organization for Standardization, with the latest standard version ratified and published by ISO in December 2017 as ISO/IEC 14882:2017.
The C++ programming language was standardized in 1998 as ISO/IEC 14882:1998, amended by the C++03, C++11 and C++14 standards. The current C++ 17 standard supersedes these with an enlarged standard library. Before the initial standardization in 1998, C++ was developed by Danish computer scientist Bjarne Stroustrup at Bell Labs since 1979 as an extension of the C language. C++20 is the next planned standard, keeping with the current trend of a new version every three years. In 1979, Bjarne Stroustrup, a Danish computer scientist, began work on "C with Classes", the predecessor to C++; the motivation for creating a new language originated from Stroustrup's experience in programming for his Ph. D. thesis. Stroustrup found that Simula had features that were helpful for large software development, but the language was too slow for practical use, while BCPL was fast but too low-level to be suitable for large software development; when Stroustrup started working in AT&T Bell Labs, he had the problem of analyzing the UNIX kernel with respect to distributed computing.
Remembering his Ph. D. experience, Stroustrup set out to enhance the C language with Simula-like features. C was chosen because it was general-purpose, fast and used; as well as C and Simula's influences, other languages influenced C++, including ALGOL 68, Ada, CLU and ML. Stroustrup's "C with Classes" added features to the C compiler, including classes, derived classes, strong typing and default arguments. In 1983, "C with Classes" was renamed to "C++", adding new features that included virtual functions, function name and operator overloading, constants, type-safe free-store memory allocation, improved type checking, BCPL style single-line comments with two forward slashes. Furthermore, it included the development of a standalone compiler for Cfront. In 1985, the first edition of The C++ Programming Language was released, which became the definitive reference for the language, as there was not yet an official standard; the first commercial implementation of C++ was released in October of the same year.
In 1989, C++ 2.0 was released, followed by the updated second edition of The C++ Programming Language in 1991. New features in 2.0 included multiple inheritance, abstract classes, static member functions, const member functions, protected members. In 1990, The Annotated C++ Reference Manual was published; this work became the basis for the future standard. Feature additions included templates, namespaces, new casts, a boolean type. After the 2.0 update, C++ evolved slowly until, in 2011, the C++11 standard was released, adding numerous new features, enlarging the standard library further, providing more facilities to C++ programmers. After a minor C++14 update released in December 2014, various new additions were introduced in C++17, further changes planned for 2020; as of 2017, C++ remains the third most popular programming language, behind Java and C. On January 3, 2018, Stroustrup was announced as the 2018 winner of the Charles Stark Draper Prize for Engineering, "for conceptualizing and developing the C++ programming language".
According to Stroustrup: "the name signifies the evolutionary nature of the changes from C". This name is credited to Rick Mascitti and was first used in December 1983; when Mascitti was questioned informally in 1992 about the naming, he indicated that it was given in a tongue-in-cheek spirit. The name comes from C's ++ operator and a common naming convention of using "+" to indicate an enhanced computer program. During C++'s development period, the language had been referred to as "new C" and "C with Classes" before acquiring its final name. Throughout C++'s life, its development and evolution has been guided by a set of principles: It must be driven by actual problems and its features should be useful in real world programs; every feature should be implementable. Programmers should be free to pick their own programming style, that style should be supported by C++. Allowing a useful feature is more important than preventing every possible misuse of C++, it should provide facilities for organising programs into separate, well-defined parts, provide facilities for combining separately developed parts.
No implicit violations of the type system (but allow explicit violations.
Fritzing is an open-source initiative to develop amateur or hobby CAD software for the design of electronics hardware, to support designers and artists ready to move from experimenting with a prototype to building a more permanent circuit. It was developed at the University of Applied Sciences of Potsdam; the software is created in the spirit of the Processing programming language and the Arduino microcontroller and allows a designer, researcher, or hobbyist to document their Arduino-based prototype and create a PCB layout for manufacturing. The associated website helps users share and discuss drafts and experiences as well as to reduce manufacturing costs. Fritzing can be seen as an electronic design automation tool for non-engineers: the input metaphor is inspired by the environment of designers, while the output is focused on accessible means of production; as of December 2, 2014 Fritzing has made a code view option, where one can modify code and upload it directly to an Arduino device. Component images are distributed under CC-BY-SA, which will be the license for any generated breadboard views.
The Fritzing source code is written in C++ using the Qt-framework. The source code can be edited via the GitHub repositories; the source is split in two main repositories: Fritzing-Parts. Fritzing allows for easy creation of printed circuit boards. FritzingFab enables users to order PCBs with designs made on the Fritzing software. Additionally, the website contains a forum where users can share and comment on each other's designs. Comparison of EDA software List of free electronics circuit simulators Official website User Forum FabService Fritzing-App on GitHub Fritzing-Parts on GitHub Fritzing overview
Electronic design automation
Electronic design automation referred to as electronic computer-aided design, is a category of software tools for designing electronic systems such as integrated circuits and printed circuit boards. The tools work together in a design flow that chip designers use to design and analyze entire semiconductor chips. Since a modern semiconductor chip can have billions of components, EDA tools are essential for their design; this article describes EDA with respect to integrated circuits. Before EDA, integrated circuits were designed by hand, manually laid out; some advanced shops used geometric software to generate the tapes for the Gerber photoplotter, but those copied digital recordings of mechanically drawn components. The process was fundamentally graphic, with the translation from electronics to graphics done manually; the best known company from this era was Calma. By the mid-1970s, developers started to automate the design along with the drafting; the first placement and routing tools were developed.
The proceedings of the Design Automation Conference cover much of this era. The next era began about the time of the publication of "Introduction to VLSI Systems" by Carver Mead and Lynn Conway in 1980; this ground breaking text advocated chip design with programming languages. The immediate result was a considerable increase in the complexity of the chips that could be designed, with improved access to design verification tools that used logic simulation; the chips were easier to lay out and more to function since their designs could be simulated more prior to construction. Although the languages and tools have evolved, this general approach of specifying the desired behavior in a textual programming language and letting the tools derive the detailed physical design remains the basis of digital IC design today; the earliest EDA tools were produced academically. One of the most famous was the "Berkeley VLSI Tools Tarball", a set of UNIX utilities used to design early VLSI systems. Still used are the Espresso heuristic logic minimizer and Magic.
Another crucial development was the formation of MOSIS, a consortium of universities and fabricators that developed an inexpensive way to train student chip designers by producing real integrated circuits. The basic concept was to use reliable, low-cost low-technology IC processes, pack a large number of projects per wafer, with just a few copies of each projects' chips. Cooperating fabricators either donated the processed wafers, or sold them at cost, seeing the program as helpful to their own long-term growth. 1981 marks the beginning of EDA as an industry. For many years, the larger electronic companies, such as Hewlett Packard and Intel, had pursued EDA internally. In 1981, managers and developers spun out of these companies to concentrate on EDA as a business. Daisy Systems, Mentor Graphics, Valid Logic Systems were all founded around this time, collectively referred to as DMV. Within a few years there were many companies specializing in EDA, each with a different emphasis; the first trade show for EDA was held at the Design Automation Conference in 1984.
In 1981, the U. S. Department of Defense began funding of VHDL as a hardware description language. In 1986, another popular high-level design language, was first introduced as a hardware description language by Gateway Design Automation. Simulators followed these introductions, permitting direct simulation of chip designs: executable specifications. In a few more years, back-ends were developed to perform logic synthesis. Current digital flows are modular; the front ends produce standardized design descriptions that compile into invocations of "cells,", without regard to the cell technology. Cells implement logic or other electronic functions using a particular integrated circuit technology. Fabricators provide libraries of components for their production processes, with simulation models that fit standard simulation tools. Analog EDA tools are far less modular, since many more functions are required, they interact more and the components are less ideal. EDA for electronics has increased in importance with the continuous scaling of semiconductor technology.
Some users are foundry operators, who operate the semiconductor fabrication facilities, or "fabs", design-service companies who use EDA software to evaluate an incoming design for manufacturing readiness. EDA tools are used for programming design functionality into FPGAs. High-level synthesis – high-level design description is converted into RTL. Logic synthesis – translation of RTL design description into a discrete netlist of logic gates. Schematic capture – For standard cell digital, analog, RF-like Capture CIS in Orcad by Cadence and ISIS in Proteus Layout – schematic-driven layout, like Layout in Orcad by Cadence, ARES in Proteus Transistor simulation – low-level transistor-simulation of a schematic/layout's behavior, accurate at device-level. Logic simulation – digital-simulation of an RTL or gate-netlist's digital behavior, accurate at boolean-level. Behavioral Simulation – high-level simulation of a design's architectural operation, accurate at cycle-level or interface-level. Hardware emulation – Use of special purpose hardware to emulate the logic of a proposed design.
Can sometimes be plugged into a system in place of a yet-to-be-built chip. Technology CAD analyze the underlying process technology. Electrical prope
Microsoft Windows is a group of several graphical operating system families, all of which are developed and sold by Microsoft. Each family caters to a certain sector of the computing industry. Active Windows families include Windows Embedded. Defunct Windows families include Windows Mobile and Windows Phone. Microsoft introduced an operating environment named Windows on November 20, 1985, as a graphical operating system shell for MS-DOS in response to the growing interest in graphical user interfaces. Microsoft Windows came to dominate the world's personal computer market with over 90% market share, overtaking Mac OS, introduced in 1984. Apple came to see Windows as an unfair encroachment on their innovation in GUI development as implemented on products such as the Lisa and Macintosh. On PCs, Windows is still the most popular operating system. However, in 2014, Microsoft admitted losing the majority of the overall operating system market to Android, because of the massive growth in sales of Android smartphones.
In 2014, the number of Windows devices sold was less than 25 %. This comparison however may not be relevant, as the two operating systems traditionally target different platforms. Still, numbers for server use of Windows show one third market share, similar to that for end user use; as of October 2018, the most recent version of Windows for PCs, tablets and embedded devices is Windows 10. The most recent versions for server computers is Windows Server 2019. A specialized version of Windows runs on the Xbox One video game console. Microsoft, the developer of Windows, has registered several trademarks, each of which denote a family of Windows operating systems that target a specific sector of the computing industry; as of 2014, the following Windows families are being developed: Windows NT: Started as a family of operating systems with Windows NT 3.1, an operating system for server computers and workstations. It now consists of three operating system subfamilies that are released at the same time and share the same kernel: Windows: The operating system for mainstream personal computers and smartphones.
The latest version is Windows 10. The main competitor of this family is macOS by Apple for personal computers and Android for mobile devices. Windows Server: The operating system for server computers; the latest version is Windows Server 2019. Unlike its client sibling, it has adopted a strong naming scheme; the main competitor of this family is Linux. Windows PE: A lightweight version of its Windows sibling, meant to operate as a live operating system, used for installing Windows on bare-metal computers, recovery or troubleshooting purposes; the latest version is Windows PE 10. Windows IoT: Initially, Microsoft developed Windows CE as a general-purpose operating system for every device, too resource-limited to be called a full-fledged computer. However, Windows CE was renamed Windows Embedded Compact and was folded under Windows Compact trademark which consists of Windows Embedded Industry, Windows Embedded Professional, Windows Embedded Standard, Windows Embedded Handheld and Windows Embedded Automotive.
The following Windows families are no longer being developed: Windows 9x: An operating system that targeted consumers market. Discontinued because of suboptimal performance. Microsoft now caters to the consumer market with Windows NT. Windows Mobile: The predecessor to Windows Phone, it was a mobile phone operating system; the first version was called Pocket PC 2000. The last version is Windows Mobile 6.5. Windows Phone: An operating system sold only to manufacturers of smartphones; the first version was Windows Phone 7, followed by Windows Phone 8, the last version Windows Phone 8.1. It was succeeded by Windows 10 Mobile; the term Windows collectively describes any or all of several generations of Microsoft operating system products. These products are categorized as follows: The history of Windows dates back to 1981, when Microsoft started work on a program called "Interface Manager", it was announced in November 1983 under the name "Windows", but Windows 1.0 was not released until November 1985.
Windows 1.0 was to achieved little popularity. Windows 1.0 is not a complete operating system. The shell of Windows 1.0 is a program known as the MS-DOS Executive. Components included Calculator, Cardfile, Clipboard viewer, Control Panel, Paint, Reversi and Write. Windows 1.0 does not allow overlapping windows. Instead all windows are tiled. Only modal dialog boxes may appear over other windows. Microsoft sold as included Windows Development libraries with the C development environment, which included numerous windows samples. Windows 2.0 was released in December 1987, was more popular than its predecessor. It features several improvements to the user memory management. Windows 2.03 changed the OS from tiled windows to overlapping windows. The result of this change led to Apple Computer filing a suit against Microsoft alleging infringement on Apple's copyrights. Windows 2.0