This is a technical blog dedicated to software development and data analysis, in it you can find articles related to these thematics and free software to download, developed by me.
-
17/03/2017
With this article I finish the series dedicated to the ThiefWatcher solution, a homemade video surveillance system that is triggered when some intruder enter your home, alerts you by calling to the mobile phone and allows you to obtain at the moment pictures that you can use to help the police quickly identify the thieves and increase the chances of quickly recovering your stolen belongings. In this last article I will explain the App that is used as a remote client of the system.
[Read More...] -
10/03/2017
In this second article in the series on the ThiefWatcher homemade video surveillance system, I will explain the different protocols that the application uses to interact with its different components, which can be replaced by different new ones allowing a large number of combinations. There is a protocol to communicate with the camera, another to trigger the system, another to alerting the user remotely, and, finally, a protocol to exchange photographs and messages to manage the server from client devices.
[Read More...] -
03/03/2017
In this series of articles I will do a bit of DIY to build a video surveillance and alarm system against home thefts, using relatively cheap materials and a program that will notify to your mobile phone in case of detecting intruders and allow you to take photographs of them to be able to immediately notify the police and provide them those photos. Rapid identification of thieves can be crucial for you to recover all our possessions quickly.
[Read More...] -
03/02/2017
WCF (Windows Communication Foundation) is a framework for creating distributed applications whose components communicate with each other through services, using a wide range of network protocols. In this article I will comment on the fundamentals of creating and configuring one of these services through a data connector for the DBTextFinder application, a program to search for texts in a database that can be extended to connect to any data management system.
[Read More...] -
27/01/2017
WInRQA is an application dedicated to recurrence plots, a tool that is used in the analysis of recurrence of complex time series. In this article I will introduce a new tool that I have added to the program. Until now, the measures of quantification of recurrence (RQM) were obtained only from a static portion of the original series. With the new tool, we can obtain a series of measures by moving a window along the entire original series and calculating the corresponding measurements to each of these windows.
[Read More...] -
20/01/2017
The Iterated function systems (IFS) are a simple mathematical tool for constructing fractal sets through a series of contractive affine applications. This method was developed by M.F. Barnsley in 1985. In particular, it is useful to obtain a self-similar fractal based on iteratively applying the system of functions to any set, until arriving at a good approximation of the fractal set that constitutes the attractor of the system.
[Read More...] -
13/01/2017
In this article I will present a custom DataGridView control that allows using formulas composed by arithmetic expressions and references to the different cells of the control. In addition to the class library with the control, I have prepared a small application to show how to use the different features it offers.
[Read More...] -
06/01/2017
BNFUP is a class library that implements an object compiler from the definition of a language using BNF rules. It also provides rule editing services. In this article I continue showing how to use the editor to compile and test your own objects using the language you have defined for that. I will also show you three examples of implementation.
[Read More...] -
05/01/2017
In this series of articles I will show a class library that implements a compiler that uses any language defined by BNF rules and that generates objects from a user-written class library, which must implement a simple interface so that the compiler can construct and initialize them from the source code.
[Read More...] -
16/12/2016
All major database servers allow the creation of executable objects, such as functions or stored procedures, using some type of SQL extension language, such as PLSQL in Oracle or T-SQL in SQL Server, so that we can create applications to access and manipulate data in a more sophisticated way. In this article I will show how we can access the source code of these objects from any program using the catalog views of three of the most popular RDBMS, MySQL, Oracle and SQL Server.
[Read More...] -
09/12/2016
In this article I will continue with the integration of CLR objects into a SQL Server database by showing how to implement triggers and create user-defined data types. It is a simple way to extend the functionality of our database applications with all the power provided by the CLR of the .NET framework.
[Read More...] -
02/12/2016
In this article I will show you how you can easily extend the SQL of your SQL Server servers with functions and data types of the .NET Framework CLR (Common Language Runtime). To do this, I will implement a function with scalar return value, another function with table return value, a pair of aggregation functions and a stored procedure.
[Read More...] -
26/11/2016
WInRQA is an application dedicated to recurrence plots, a tool that is used in the analysis of recurrence of complex time series. In this article I will present the first extension of the application, which mainly consists of a series of tool windows that will help you to make estimates on what may be the most appropriate delay to try to reconstruct the phase space of the system attractor and select the correct embedding dimension.
[Read More...] -
18/11/2016
In this article I will show how, through a very simple and totally deterministic process, we can move from a stationary system to a completely random one, going through periodic and chaotic dynamics. For this, I will generate several time series with these characteristics using the program R and several packages that can help us in the analysis of them.
[Read More...] -
11/11/2016
A recurrence plot is a graphical tool used in the study of complex time series. Along with the plot we can also calculate a series of measures that allow us to perform a recurrence quantification analysis, or RQA. In this article I will present the WinRQA application, a tool to work with recurrence plots and RQA measures in a Windows environment.
[Read More...] -
01/11/2016
A stepper motor is a kind of motor that, instead of rotating continuously in one direction, allows rotate in very small steps and stop and change direction very quickly, without problems of inertia. This makes these engines very suitable for mounting them in devices which perform movements that required high precision. In this article I will show how to build a simple controller to handle one of these motors through the Arduino board, along with a sample program written in CSharp that allows you to operate the motor from the computer where the plate is connected.
[Read More...] -
28/10/2016
The correspondence analysis is a statistical technique that allows us to study relationships between categorical data through optimal scaling and orthogonal projection in two or three dimensions of contingency tables. Its implementation is relatively simple, and in this article I will show an example using the csharp language. In addition, the sample program allows you to draw simple graphics with the resulting data.
[Read More...] -
21/10/2016
The PISA database contains, in addition to the scores of students, a lot of demographic, socioeconomic and cultural data about them, collected through a series of questionnaires, that allow contextualize the academic results and make studies with a great number of variables. Most of these data are categorical, making the correspondence analysis a particularly appropriate tool to work with them. In this article I will show you how to easily perform this analysis using the ca package of the R program.
[Read More...] -
12/10/2016
To conclude this series on complex time series and their characterization using graphical tools I will show you a tool called recurrence plot, which allows to obtain some measures used in the recurrence quantification analysis, or RQA for its acronym in English. The recurrence is a characteristic property of deterministic dynamical systems, and consists of that two or more states of the system are arbitrarily close after a certain period of time.
[Read More...] -
08/10/2016
In this new article in the series on time series with complex dynamics, I will show you a procedure to approximately reconstruct the information of a dynamic system with two or more variables from a single series, i.e. a set of data in a single dimension. What we will get from this unique series is a new one for each of the extra dimensions with which we intend to extend the model.
[Read More...]