solving ordinary differential equations differential equations constitute one of the most powerful mathematical tools to understand and predict the behavior of dynamical systems in natureengineeringand society dynamical system is some system with some stateusually expressed by set of variablesthat evolves in time for examplean oscillating pendulumthe spreading of diseaseand the weather are examples of dynamical systems we can use basic laws of physicsor plain intuitionto express mathematical rules that govern the evolution of the system in time these rules take the form of differential equations you are probably well experienced with equationsat least equations like ax cb or ax cbx cc such equations are known as algebraic equationsand the unknown is number the unknown in differential equation is functionand differential equation will almost always involve this function and one or more derivatives of the function for examplef xd xis simple differential equation (asking if there is any function such that it equals its derivative you might remember that is candidatethe present starts with explaining how easy it is to solve both single (scalarfirst-order ordinary differential equations and systems of first-order differential equations by the forward euler method we demonstrate all the mathematical and programming details through two specific applicationspopulation growth and spreading of diseases then we turn to physical applicationoscillating mechanical systemswhich arise in wide range of engineering situations the differential equation is now of second orderand the forward euler method does not perform well this observa(cthe author( lingeh langtangenprogramming for computations pythontexts in computational science and engineering doi --