Online publisher platform Pensoft.net
One year of my career was devoted to this website. I learned a lot of things and tricks while I was creating it. Working on this project gave me a lot of experience and shaped me as a developer.
Visit the website
Pensoft.net is a corporative website that includes in its functionality a web store, and an editorial system that is similar to the one incorporated in Open Journal Systems (OJS). The design is simple because of the complicated functionality programmed in it. The huge number of actions that users can take constrained the designer to create an easy to use friendly design. I did't work on this project as a freelancer.
What I did
In the process of developing this complicated web based software I did all the job related to the editorial system. It is similar to that of the OJS. Moreover this functionality is extended to a new height thanks to the requirements of the client. The editorial system includes multiple user roles in the system, editorial process, publishing, searching. After the editorial process the second main functionality was the one in which the operators were able to join articles in journal issue.
The editorial process is divided in several steps. The author uploads its manuscript which is continuously reviewed by the editors, reviewers, copywriters and many more. This cycle repeats over and over again. After the publication is finally approved it is scheduled for publishing on the next virtual edition of the journal. This complicated workflow algorith was developed by me.
At the time when the project stated OJS wasn't able to maintain multiple journals on one platform. This is one of the important extensions that I added to the OJS algorithm. The OJS was the cornerstone on which the client's project stared to rise. All the functionality was coded by me from bottom to top with not a single bite of code copied from the OJS.
Skills that I used
What I learned
The year that I spend working on this project showed me a lot of things. The most important is that learned how to work with clients. During the work process I had numerous meetings with a representatives of the client. In this meetings I developed skills to present my work, also to present new ideas and the most important skill that I acquired was the ability how to persuade the client that the thing he wants is not the best for the website and the projects as a whole.
Database design was another thing that I mastered during the design of Pensoft.net's database. The base is big and complicated. I succeeded in its creation, improvement and normalization. During the work on the database MySQL developer's duide became my best frinend. I read more than half of it.
I had to explore the functionality and source code of OJS. This gave me the skills to work with open source projects and how to interact and research them. I didn't poses this skill when I started working for Pensoft.net's project. Moreover working with the OJS source code helped me to improve my skill to work with somebody else's code.
Stages of development
The work process went over several fragile stages. Most of the work was done during stages 4 and 5.
- In the begining I had a number of meetings with the client to clear his ideas and requirements.
- A great amount of time was spent in researching the functionality of OJS. This open source system was the foundation of the client's website. Actually he was using it for some time.
- When the research was completed the website's code was writen. Then it was presented to the client
- After the client reviewed the algorithm and the website, they required improvements.
- Then the project whent into a loop between stages 4 and 5. After this loop the website became a masterpiece. The usability and functionality were improved ti new heights.
- Since the client was using OJS for 5 years I had to ensure that the data in the old version will be moved correctly to the new one.
- The website went online with a great success. It was presented on a great ceremony held in a building owned by the Bulgarian Academy of Science.
- Users of the website started to give ideas to improve the website even more.
- The good ideas from stage 8 were discused with the client. The chosen ones were incorporated in the website.
- When the volume of ideas decreased the development process was stopped and the project was done.
The client was a Russian/Bulgarian company with long history in publishing scientific books, articles and journals. The main goal was to expand the company market in the virtual reality. The competion in hardcover bookstores was settling down a new area of expansion was needed. The website did its job and now the expansion continues every single day. Now there are thousands of books and ebooks sold on the website. Moreover the website is successfully running 10 separate journals.