Greentask — free service quickly create tasks and facilitate the work with freelancers
Want to present to your attention a free service that should be useful to anyone who deals with freelancers.
Meet — Greentask
In short — it is a tool to create and manage task extended features. Small spoiler service written in Go.
the
This service has many uses, but first an analogy.
Surely everyone knows the services of rapid exchange type screenshots Joxi. Another analogy is diverse pastebin's for quickly sharing pieces of code. Greentask can act as a service rapid sharing of tasks, but with far more advanced features, described below.
the
Originally wanted to make a very simple service, so it's not delayed for long, as it often happens. In the process, new ideas have emerged, and some reject them failed. In the end, produced a list of mast HEV functions, and firmly resolved to resist the temptation to add something else. Everything else is in backlog.
I have experience of working with remote employees and freelancers, and each time you search and there is the same problem:
the
Below we will examine each of these problems separately. But a new project was born of an awareness of these problems it is necessary to have other conditions. And they came together. I started developing the prototype and the backend in the summer of the 15th year when there is sufficient available funds and time, and a burning desire to try out this idea on the basis of new technology. By this time, I have long been eyeing the Go programming language, and now when the head was the idea of a new project has no reason not to start development. As you know the best way to learn a new programming language is to write something real and more complex than “Hello world!”. Solved — made. Worked mainly on weekends, full-time, it would be possible to meet in much smaller terms, but such task did not stand. Below I will tell more about their experiences when working with the Go and what benefits he gave to this project.
the
Let's look at the above problem in more details, as well as approaches that uses Greentask to solve them.
the
Imagine that you have a problem, but no artist. You post an ad on several freelance and waiting for an answer. Stop. And where do you expect an answer? Usually through several channels. Someone will write via private messages of the exchange, someone to email, someone to skype with someone in icq. But you don't have ICQ already for many years. Well, there is skype, but without it there was a bunch of contacts since the publication of the last mission. The result is a spaghetti of different channels. Familiar?
Greentask offers to reduce all communication to the task itself. All you need to do on freelance exchange — leave a link to the assignment in the text of the task. Link: greentask.in/your_task_hash. For particularly stubborn, you can leave a link to the text: “to Write sentences and questions strictly on the jobs page”. Because the browser that is everyone.
the
If you use skype or other messengers, then the first thing to ask the candidate: “Tell the task more in detail”, there may be options. You can copy-paste each task, or transfer the word file which you can open locally. Then still there will be questions that will refer to different sections of the task and you will have to jump here and there to find the desired item, and then respond on Skype.
Greentask solves the problem of transfer issued job just opening links in the browser, without downloading anything, and the questions for each paragraph of the task can be set up directly underneath. Every online visitor job stands out a circle top right, thus you can estimate the number of learners your assignment.
the
As you know, properly formulated and executed the job is already 50% done. Greentask helps you to build the structure of the task clear to the contractor. For this, the artists themselves will tell you thank you. But if you are a freelancer, it makes sense to recommend greentask your customers, for mutual ease of use. It is important to note the fact that the service does not exclude the possibility to write something like TOR, and is not exclusive to this tool, but it helps to reduce errors. Although it is not enough.
the
It often happens that after familiarization of the contractor with the job and want to make a change in the TOR. And it would be good to know about it. And even better, to see what exactly has changed. For this General case have to tell us separately about this. And it's not comfortable, but if the performers(candidates) a few, it is even more uncomfortable.
Greentask will be sent to all members of the task notifications about all the changes, the link to the page where you implemented the visual comparisons of versions of the task: version which saw the performer in recent times and the latest version of the task. This will prevent unnecessary questions, like “what changed since that time?”
the
Initially I saw this service is free for all, besides it is a kind of pilot project. In the future, the project promises to be a free for all.
the
Especially for greentask developed Chrome extension for easy access to jobs, as well as operational information on changes in the task. The functionality is very simple and, I hope, is clear.
the
The site is optimized for viewing in mobile devices, and multiple elements of Material create an almost native look and feel =)
the
About Go already written enough, so tell only what benefits gave language in this project, without spreading philosophical thoughts. Just to say that Go, in my opinion, language for practitioners who want to quickly implement reliable functionality, and for which it does not matter if there are generics or the garbage collector. These people write programs that just work.
the
I myself am bekendt and I love to do the front end a little more than nothing. Even though there is sufficient provision, about how best to adjust the backend under the front. So I had to search for the artist. How to raise the backend locally? In the case of Go this 2 commands: run migrations to create tables in sqlite, and in fact run a web server. All. Besides, there is no need to transmit the source as the case of python/ruby/php/... About deployment and say nothing, it's really easy.
the
In greentask you can upload attachments to the task, the task may be private, i.e. not publicly available. In this case, the attachment should not be available publicly. In the case of conventional distribution scheme of statics through Nginx, you would have to resort to different non-trivial ways to configure Nginx to control access rights to static. In greentask this logic is inside the application.
Nginx or another web server is not used at all. Compression and ssl termination happen in the app.
the
Not all the tasks are executed instantly, so it is desirable to run asynchronously. In django this would require celery or analog, that is a separate process. Go all running in a single process and code starts using the go statement. Very simple and beautiful. Use for asynchronous mail sending.
the
Due to the presence of built-in mechanisms for asynchronous processing, and the finished libraries, the implementation of websockets is not too difficult. In greentask I use them to display online users and the procedures for updating data on the page when changed. Therefore, open the tasks page always displays relevant data without reloading, be it a comment, change the text or download attach by the contractor. As a bonus, you will receive a notification by email of new comments and change jobs if you online, because you will see him.
the
Similarly, the asynchronous task is also implemented in a single process(instead of celery / celerybeat)
the
This is not an exclusive feature and do not feature Go, just a nice feature in the web framework, Beego which built the project.
If the community shows interest, I would have more details to tell about implementation details of some features of the service with specific code examples.
the
Plans for further development of the service depend largely on user feedback, so please, if you are interested in the project, leave a comment.
What I would like to implement:
the
the
I want to note that Greentask can be used not for its intended purpose — to create and discuss the issues. For example you can :
the
Article based on information from habrahabr.ru
Meet — Greentask
In short — it is a tool to create and manage task extended features. Small spoiler service written in Go.
the
About the service
This service has many uses, but first an analogy.
Surely everyone knows the services of rapid exchange type screenshots Joxi. Another analogy is diverse pastebin's for quickly sharing pieces of code. Greentask can act as a service rapid sharing of tasks, but with far more advanced features, described below.
the
History
Originally wanted to make a very simple service, so it's not delayed for long, as it often happens. In the process, new ideas have emerged, and some reject them failed. In the end, produced a list of mast HEV functions, and firmly resolved to resist the temptation to add something else. Everything else is in backlog.
I have experience of working with remote employees and freelancers, and each time you search and there is the same problem:
the
-
the
- Channel of communication the
- shipping jobs the
- Structure set the
- job Change in the process
Below we will examine each of these problems separately. But a new project was born of an awareness of these problems it is necessary to have other conditions. And they came together. I started developing the prototype and the backend in the summer of the 15th year when there is sufficient available funds and time, and a burning desire to try out this idea on the basis of new technology. By this time, I have long been eyeing the Go programming language, and now when the head was the idea of a new project has no reason not to start development. As you know the best way to learn a new programming language is to write something real and more complex than “Hello world!”. Solved — made. Worked mainly on weekends, full-time, it would be possible to meet in much smaller terms, but such task did not stand. Below I will tell more about their experiences when working with the Go and what benefits he gave to this project.
the
Problem
Let's look at the above problem in more details, as well as approaches that uses Greentask to solve them.
the
Channel of communication
Imagine that you have a problem, but no artist. You post an ad on several freelance and waiting for an answer. Stop. And where do you expect an answer? Usually through several channels. Someone will write via private messages of the exchange, someone to email, someone to skype with someone in icq. But you don't have ICQ already for many years. Well, there is skype, but without it there was a bunch of contacts since the publication of the last mission. The result is a spaghetti of different channels. Familiar?
Greentask offers to reduce all communication to the task itself. All you need to do on freelance exchange — leave a link to the assignment in the text of the task. Link: greentask.in/your_task_hash. For particularly stubborn, you can leave a link to the text: “to Write sentences and questions strictly on the jobs page”. Because the browser that is everyone.
the
shipping jobs
If you use skype or other messengers, then the first thing to ask the candidate: “Tell the task more in detail”, there may be options. You can copy-paste each task, or transfer the word file which you can open locally. Then still there will be questions that will refer to different sections of the task and you will have to jump here and there to find the desired item, and then respond on Skype.
Greentask solves the problem of transfer issued job just opening links in the browser, without downloading anything, and the questions for each paragraph of the task can be set up directly underneath. Every online visitor job stands out a circle top right, thus you can estimate the number of learners your assignment.
the
Structure set
As you know, properly formulated and executed the job is already 50% done. Greentask helps you to build the structure of the task clear to the contractor. For this, the artists themselves will tell you thank you. But if you are a freelancer, it makes sense to recommend greentask your customers, for mutual ease of use. It is important to note the fact that the service does not exclude the possibility to write something like TOR, and is not exclusive to this tool, but it helps to reduce errors. Although it is not enough.
the
custom task in the process
It often happens that after familiarization of the contractor with the job and want to make a change in the TOR. And it would be good to know about it. And even better, to see what exactly has changed. For this General case have to tell us separately about this. And it's not comfortable, but if the performers(candidates) a few, it is even more uncomfortable.
Greentask will be sent to all members of the task notifications about all the changes, the link to the page where you implemented the visual comparisons of versions of the task: version which saw the performer in recent times and the latest version of the task. This will prevent unnecessary questions, like “what changed since that time?”
the
Why is the service free?
Initially I saw this service is free for all, besides it is a kind of pilot project. In the future, the project promises to be a free for all.
the
Chrome extension
Especially for greentask developed Chrome extension for easy access to jobs, as well as operational information on changes in the task. The functionality is very simple and, I hope, is clear.
the
Mobile version
The site is optimized for viewing in mobile devices, and multiple elements of Material create an almost native look and feel =)
the
a Little about Go
About Go already written enough, so tell only what benefits gave language in this project, without spreading philosophical thoughts. Just to say that Go, in my opinion, language for practitioners who want to quickly implement reliable functionality, and for which it does not matter if there are generics or the garbage collector. These people write programs that just work.
the
Static binary
I myself am bekendt and I love to do the front end a little more than nothing. Even though there is sufficient provision, about how best to adjust the backend under the front. So I had to search for the artist. How to raise the backend locally? In the case of Go this 2 commands: run migrations to create tables in sqlite, and in fact run a web server. All. Besides, there is no need to transmit the source as the case of python/ruby/php/... About deployment and say nothing, it's really easy.
the
Distribution of static and the lack of Nginx
In greentask you can upload attachments to the task, the task may be private, i.e. not publicly available. In this case, the attachment should not be available publicly. In the case of conventional distribution scheme of statics through Nginx, you would have to resort to different non-trivial ways to configure Nginx to control access rights to static. In greentask this logic is inside the application.
Nginx or another web server is not used at all. Compression and ssl termination happen in the app.
the
Asynchronous tasks
Not all the tasks are executed instantly, so it is desirable to run asynchronously. In django this would require celery or analog, that is a separate process. Go all running in a single process and code starts using the go statement. Very simple and beautiful. Use for asynchronous mail sending.
the
Websocket
Due to the presence of built-in mechanisms for asynchronous processing, and the finished libraries, the implementation of websockets is not too difficult. In greentask I use them to display online users and the procedures for updating data on the page when changed. Therefore, open the tasks page always displays relevant data without reloading, be it a comment, change the text or download attach by the contractor. As a bonus, you will receive a notification by email of new comments and change jobs if you online, because you will see him.
the
Task schedule
Similarly, the asynchronous task is also implemented in a single process(instead of celery / celerybeat)
the
Generate the API documentation for swagger
This is not an exclusive feature and do not feature Go, just a nice feature in the web framework, Beego which built the project.
If the community shows interest, I would have more details to tell about implementation details of some features of the service with specific code examples.
the
Plans
Plans for further development of the service depend largely on user feedback, so please, if you are interested in the project, leave a comment.
What I would like to implement:
the
-
the
- to Improve the interface(services and chrome apps) the
- Mobile app the
- More settings and options, including through a policy of comment on task the
- the Opportunity to share write access to a job for their colleagues the
- Ability to download an archive of all attaches immediately
the
PS
I want to note that Greentask can be used not for its intended purpose — to create and discuss the issues. For example you can :
the
-
the
- to make for themselves a TODO sheet, and upon completion of tick boxes ready. Or just as a Notepad. the
- it is also possible to quickly exchange files, the privacy option will not give access to third parties. the
- to conduct a survey among a certain circle of persons, you will see all the answers, and commentators. (“Vanya birthday today, I'm like * head please call the amount you can donate to the gift of s/n”) the
- publish news the
- to create the FAQ the
- use as the WIKI engine c releases the
- to create and share photo albums(public and private) the
- to download a file from the Internet directly to greentask, and then upload it. This can be useful when the file directly for some reason not downloaded/downloaded slowly. the
- anything else that you can think of a way to write about it in the comments)
Комментарии
Отправить комментарий