Ovunque io abbia lavorato mi è capitato di dover sviluppare un’applicazione per gestire determinate situazioni. Progetti, gestione supporto tecnico, IT governance, e via discorrendo. Ultimamente ho molto a cuore la parte di gestione del supporto tecnico che cerco di plasmare secondo quella che è la realtà corporativa in cui mi trovo (vedi Visioni IT: continuiamo ad integrare il Help Desk ). Uno degli argomenti di cui invece non ho mai avuto modo di parlare sono sicuramente gli aspetti sistemistici.
In passato ho lavorato molto con Apache e RedHat Linux e continuo a farlo with considerable satisfaction, however, my choices in the company fell on Microsoft Windows 2003 Server as a server platform for the application, while maintaining an open component for its implementation (PHP, MySQL, OpenLDAP, etc.). The reasons are varied, but in principle I have to admit that Windows 2003 Server is a product that I like most. I think it is one of the best products released by Microsoft in recent years (I think that if I had to choose between Linux RedHat and Windows 2000 Server I would think much more carefully to what to choose). Having always been a large number of users to manage (> 50) and an Active Directory domain in which all users are managed and going to duplicate a user database is more or less equivalent to a suicide administrative (from the point of view of course management systems). For this reason (pretty obvious), Integrated authentication with IIS6 (or base) is the natural choice to solve my problem. The objective is typically to provide users with the least possible number of things to remember as much as possible and simplify their lives (transparent authentication of IE). Regarding security, HTTPS support IIS6 totally responds to my requirements. In other words, with a relatively low-cost licensing I have a chance to put up a front-end production (also virtual) with a high level functional and able to give me the capabilities of High Availability with Load Balancing service (also available on Windows 2003 Web Edition).
The backend application (usually installed on the same machine) rather than its structure based on a database, MySQL 5, and as the ever-popular programming language PHP. There are two applications that have known very well and pull in favor of upper decks (such as. NET and MSSQL) intrigues me not to much (although I use the other two platforms, even in a web context - see below). MySQL 5 database is a robust, fast and capable of handling large volumes of information without any problem. I use it all the way from 3.23, with support strictly relational. Today I think I know how to use a large capacity, exploiting all the benefits that I can bring, the transaction support stored procedures, up to the management of the trigger (with the advent of version 5). PHP is also a choice derived from years of experience is fast, has a very extensive feature set and a framework that I created over the years makes things a lot. The knowledge of the language was certainly the decisive choice.
Now back to the aspects of software design. I mentioned the problem authenticating users and this is undoubtedly one of the most important reasons why I opted for Windows as a web server. Another reason is undoubtedly the document storage and indexing system built into Windows. And how can we appreciate the access to system resources of Windows other than through the libraries of PHP and COM objects? The latter (COM objects precisely) called from PHP on Linux open borders that are not traversable. Just consider the report generation. Many now say "but how, we can generate them in PDF." And the problem is resolved. The problem is that this is a response from technical / programmer and my opinion about it is that the PDF is not a practical size. It is a read-only format, unwieldy and difficult to reuse especially. Let us remember that we are talking about corporate applications, not web sites (in which case the PDF are certainly a good solution).
installing Microsoft Office on the server can retrieve Office documents themselves, created a native mode that certainly will not cause compatibility problems with Office packages distributed in the company. Then generate reports in Excel or Word becomes a breeze. Similarly, the prints of the reports are not more way to handle HTML pages but in a more "appreciated" by the printers: send documents to print directly to printer queues on the network is also simple. Another advantage of this integrated system is to be delegate to a non-programmer the autonomy to create new electronic formats. Suppose you want to print a report on letterhead or with different formatting. The user generates the report format should just build the skeleton of the document, format it so that the application replaces certain areas (or fields) with the values generated by the application (of course, a short course of training is necessary). No intervention the application code is required, management and IT department does not need to cooperate for a typical operation of the first division.
want to go forward? This is one of my "vision" of how things could go, but some time ago I tried to play. Take the COM object libraries of Skype and make sure that our application can also talk to the players, breaking the barrier of using email and so no doubt profitable even instant messaging systems.
not forget. NET and its system functionality that can be very comfortable. Take for example a simple application developed in the test environment for my intranet. The need was to be able to create an environment in which to spool a photocopier can "park" a scanned PDF file. The copier upload the file server using a direct access to SMB. Once the file is "dropped" on the server disk (ergo, they are removed the read lock) the server should change the name of the file and catalog it on the filesystem in a certain way. Here. NET returns useful, especially if what we put up is a simple service system with a few lines of C # intercepts the file you just created (with FileSystemWatcher) and moves to a position not otherwise accessible to users.
Surely the range of products available for Microsoft Windows environments are broader than the open-source products that, more often, requiring several hours of study, technical adaptation and inevitably the first graph to be implemented in production environments. Technical support, then, is something that touches us hope to have in a short time and always by community support.
short, according to my personal point of view, integrating vendor-specific solutions has its advantages (response time, deployment, technical support, documentation) and disadvantages (costs) compared to the world of Open Source solutions, but a balanced choice of two sizes to reap the advantages of both sides can bring tangible benefits and efficient corporate environment in which we work every day, giving users powerful tools that work - without us - so it would not work properly. Many different worlds can now work together without having to go crazy to find software that performs each action from outside suppliers, giving us the opportunity to create a single integrated and cooperative.
0 comments:
Post a Comment