Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Ang Tracker ng pagiging Produktibo ay isang salamin ng salamangka, ngunit sa halip na ipakita ang oras, panahon at isang pagganyak na quote, nagpapakita ito ng 4 na bagay;
Ang porsyento ng oras na iyong ginugol sa mga produktibong materyal sa iyong computer at telepono para sa araw na iyon. (RescueTime)
Ang iyong listahan ng dapat gawin mula sa Trello
Isang radar graph na nagpapakita kung gaano karaming oras ang iyong ginugol kasama ang mga kategorya ng mga program-app na ginamit mo kumpara sa paggamit noong nakaraang araw. (RescueTime)
Isang lingguhang pangkalahatang ideya. (RescueTime)
At kung ang porsyento ng oras na iyong ginugol sa produktibong materyal ay higit sa 50% ang mga LED ay magpapakita ng isang maliwanag na berdeng kulay. Kung ito ay nasa ilalim ng 50% magpapakita ito ng isang pulang kulay, pagbibigay ng senyas sa iyo na maging mas produktibo! Maaari mo ring itakda ang iyong layunin sa iyong sarili.
Balangkas
Sa unang hakbang, ipapaliwanag ko ang ideya sa likod ng pagiging produktibo-tracker. Susunod, bibigyan kita ng dalawang magkakaibang listahan ng mga tool at bahagi, upang maitayo mo ang buong proyekto o isang pangunahing bersyon (Hindi kasama ang mga LED) na hindi nangangailangan ng mga kasanayan sa paghihinang. Mamaya ipapakita ko sa iyo kung paano ko nai-prototyp ang aking bersyon ng proyekto, kaya mayroon kang ideya kung paano i-modelo ang iyong sariling prototype. Gayundin, makakakuha ako ng detalye sa seksyon ng code upang maaari mong ipasadya ang code para sa iyong sariling mga pangangailangan. Sa huli, bibigyan kita ng isang gabay sa Pag-shoot ng problema batay sa mga problemang nakasalamuha ko sa pagbuo na ito. At palawakin ang listahan sa iyong mga katanungan.
Ang layunin ng itinuturo na ito ay hindi lamang bigyan ka ng isang cookbook. Ipapakita ko sa iyo ang paraan ng pagbuo ko ng proyektong ito at bibigyan ka ng mga bukas na tanong, upang maidagdag mo ang iyong sariling mga ideya, at madala pa ang proyektong ito. Masidhi kong hinihikayat kang ibahagi ang iyong build kapag tapos na ito! Magsimula na tayo.
Hakbang 1: Ang Ideya
Nilalayon kong isulat ang Instructable na ito sa loob ng maraming buwan. Ngunit isang matandang kaibigan ko na pinangalanang "Pagpapaliban" ay hindi ako pinayagan. Ang pagpapaliban ay pagkilos ng pagkaantala o pagpapaliban ng isang gawain o hanay ng mga gawain, at sa halip na gawin ang mga gawaing iyon na punan ang oras sa panonood ng mga video mula sa madilim na kailaliman ng YouTube.
Isang araw habang binabasa ang isang artikulo tungkol sa pagpapaliban ay nakatagpo ako ng maraming mga app / programa na makakatulong sa aking problema, si Trello bilang isang task management app at RescueTime bilang isang time management app. Parehong nagtrabaho nang perpekto para sa aking mga pangangailangan, para sa isang oras na hindi bababa sa. Makalipas ang ilang sandali, tumigil ako sa pagsuri ng lahat ng mga app at hindi pinansin ang mga abiso. Iyon ay kapag naisip ko ang proyektong ito. Ipapakita ko ang data mula sa mga app sa isang salamin na nakasabit sa aking dingding. Sa ganitong paraan ay walang pagtakas mula sa aking mga responsibilidad.
Ang unang draft na iginuhit ko para sa aking proyekto ay medyo simple. Gagamitin ko ang RescueTime API upang maipakita ang aking Produkto / Nakagagambalang porsyento sa trabaho. At gamitin ang Trello API upang maipakita ang aking listahan ng dapat gawin para sa araw na ito. Ngunit pagkatapos ng ilang sandali, nagdagdag ako ng maraming mga tampok na makukuha ko nang detalyado sa mga susunod na hakbang.
Hakbang 2: Mga Tool at Bahagi
Tandaan: Ito ay isang listahan ng mga tool na ginamit ko sa panahon ng aking pagbuo, hindi sila dapat maging pareho para sa iyong pagbuo!
Para sa Base:
4 Mga sukat ng 7x15cm playwood - 6 $ - Depende ito sa laki ng iyong screen
30x40cm isang panig na salamin - nakasalalay sa laki ng iyong screen
25x35cm Samsung monitor - 15 $ - Natagpuan sa isang pulgas market. anumang monitor ay gagawin
Raspberry Pi 3 Model B- 35 $ - Mabuti rin ang Raspberry pi 2 ngunit kakailanganin mo ng isang wifi module
HDMI cable - 2 $
Para sa Led Lightning:
200cm smd5050 RGB Led strip- 4 $ - Dapat ay smd5050 pa ito sa paglaon …
- Tatlong N-channel MOSFET (hal. IRLZ34N) - 2 $
- 12V-2A power adapter - 3.15 $
- Prototyping PCB - 1 $
Mga tool:
- Nakita ni Wood
- Pandikit ng kahoy
- Panghinang na Bakal (Para sa pag-iilaw ng LED)
Hakbang 3: Ang Code
Ang hakbang na ito ay nasa 3 bahagi, hindi mo kailangan ang lahat ng mga bahagi na nakalista sa nakaraang hakbang. Ang isang Raspberry Pi at ang monitor na iyong gagamitin para sa proyektong ito ay dapat sapat para sa yugto ng prototyping.
Pagse-set up ng iyong Raspberry Pi
Kung hindi mo itinakda ang iyong Raspberry Pi pa magpatuloy at gawin ito dito. Para sa pagbuo na ito, kakailanganin mong i-install ang Apache para sa web server at PHP-LED-controller.
Upang mai-install ang Apache sundin ang opisyal na patnubay na ito.
Upang mai-install ang PHP-LED-controller sundin ang patnubay na ito ni Christian Nikkanen
Ngayon i-download ang index.php file mula sa repository ng proyekto sa iyong Raspberry Pi at ilagay ito sa landas na ito:
/ var / www / html /
Kung hindi ka pamilyar sa paglipat ng mga file sa Linux Terminal, maaari mong tingnan ang gabay na ito upang makapagsimula ka.
Ipasadya ang Code
Tandaan: Ang bahaging ito ay nangangailangan ng kaunting kaalaman sa HTML / CSS kung gumagamit ka ng ibang monitor.
Ang pagpapasadya ay magagawa sa index.php file na kung saan ay ang apuyan ng pagbuo na ito. Ngayon sige at ikonekta ang iyong monitor sa iyong Raspberry Pi kung hindi mo pa nagagawa.
Ngayon kung susubukan mong buksan ang file ng index.php hindi ito gagana dahil kailangan mo munang punan ang mga API key sa code, para doon pumunta sa website ng RescueTime at magbukas ng isang account. Susunod, pumunta sa seksyon ng developer at lumikha ng isang API key sa pamamagitan ng pagpindot sa Activate This Key. Isulat ang iyong API key sa kung saan.
Gawin ang pareho para sa iyong key ng Trello API, Magbukas ng isang account at pumunta sa portal ng developer upang makabuo ng isang API key.
Susunod, buksan ang file ng index.php na inilagay mo sa / var / www / html / sa iyong paboritong text editor, at palitan ang [API_KEY] ng iyong sariling API key na nakuha mo mula sa RescueTime at Trello nang naaayon. Ang [list_number] ay ang numero ng listahan na ginagamit mo para sa iyong listahan ng dapat gawin Trello. Upang makuha ang numerong iyon unang lumikha ng isang sariwang listahan sa Trello at tawagan itong "To-Do", ito ang magiging listahan na gagamitin mo para sa iyong listahan ng dapat gawin at lilitaw ito sa salamin.
Susunod, Dalhin ang URL sa iyong address bar na mukhang:
trello.com/b/3hS6yyLo/board-name
at idagdag ang.json dito tulad nito:
trello.com/b/3hS6yyLo/board-name.json
at pindutin ang enter, susunod makikita mo ang isang gulo ng code sa screen. Subukang hanapin ang iyong listahan ng pangalan '' To-Do "sa gulo na iyon. Dapat magmukhang ganito: {" name ":" To Do "," id ":" 5981c123cd1b23f13907cd18 "}, Ang Id na iyon ang iyong listahan ng Id. Ilagay ang bilang na iyon sa [list_number] sa index.php file.
Ngayon buksan ang iyong browser at i-type ang localhost sa address bar at pindutin ang enter. Dapat mong makita ang iyong data na ipinakita sa mga graph.
Tandaan: Ang mga pagkakalagay ng mga graph ay maaaring magkakaiba dahil sa resolusyon ng monitor na iyong ginagamit. Maaari mong i-edit ang lapad, taas at lokasyon ng mga elemento sa bahagi ng CSS ng code.
Ngayon ang natitira lamang gawin ay ang pagdisenyo ng isang kahon sa paligid ng monitor at ikonekta ang mga LED.
Tandaan: Kung hindi ka interesado sa mga detalye ng API maaari kang lumaktaw sa susunod na hakbang. Sa bahagi ng API makukuha ko nang detalyado kung paano gumagana ang buong programa at nakakakuha ng data mula sa mga API.
Ang API (sa detalye)
Ang sentro ng proyektong ito ay ang Dalawang API;
- Trello API
- RescueTime API
Bagaman ang dokumentasyon ay may detalyadong impormasyon na magagamit, ipapaliwanag ko kung aling data mula sa API ang ginagamit ng proyektong ito.
Sa bahagi ng pamamahala ng oras, ang tawag sa RescueTime API na nakakakuha ng impormasyon sa oras para sa kasalukuyang araw ay, "https://www.rescuetime.com/anapi/data?key=[API_KEYgris&perspective=rank&interval=hour&restrict_begin=".date('Ym-d')."&restrict_end=".date('Ym-d '). "& format = json"
saan, ang petsa ('Y-m-d') ay ang kasalukuyang petsa
ang pananaw = ranggo ay ang uri ng pag-uuri ng data sa kasong ito na "ranggo" na kumakatawan sa karamihan sa ginugol na oras
Ang tawag na ito ay magbibigay ng isang file sa format na JSON na ganito ang hitsura: (tingnan ang data.json sa pagtatapos ng hakbang na ito)
Ang data na ginagamit namin mula sa file na ito ay ang "Oras na Ginugol (segundo)" at ang "Pagiging Produktibo" na may mga halaga sa pagitan ng -2 at 2, -2 na hindi gumaganyak at 2 na produktibo. Sa data na ito, makakabuo kami ng halagang higit sa 100 para sa marka ng pagiging produktibo.
Isa pang tawag sa API sa RescueTime, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"
Na nagbibigay sa iyo ng isang lingguhang buod ng iyong data, na ganito ang hitsura: (tingnan ang buod.json sa pagtatapos ng hakbang na ito.) Ginamit ko ang data na ito upang makabuo ng lingguhang graph ng buod na magbibigay sa iyo ng isang pangkalahatang ideya ng linggo.
Ang tawag sa Trello API, "https://api.trello.com/1/lists/[list_numbervaka/cards?fields=name&key=[API_KEY<<&token=[Token]"
Bibigyan ka nito ng mga kard sa iyong listahan ng Trello tulad nito:
[{"id": "5a4160103bfcd14994852f59", "name": "ceylan cinemagraph"}, {"id": "59e8241f6aa8662a51eb7de6", "name": "Alamin ang GitHuB"}, {"id": "5981c19577c732f826 ":" Publish Instructible "}, {" id ":" 5a341dba7f17d235d7c5bbd1 "," name ":" SPACE PROGRAM "}]
muli maaari mong hilahin ang teksto sa mga card na iyon at ilagay iyon sa iba pang lugar.
data.json
Na-format na Data ng JSON |
{ |
"note": "ang data ay isang hanay ng mga arrays (row), mga pangalan ng haligi para sa mga row sa row_headers", |
"row_headers": [ |
"Ranggo", |
"Ginugol ng Oras (segundo)", |
"Bilang ng tao", |
"Aktibidad", |
"Kategoryang", |
"Kakayahang Gumawa" |
], |
"row": [ |
[ |
1, |
1536, |
1, |
"en.0wikipedia.org", |
"Uncategorized", |
0 |
], |
[ |
2, |
1505, |
1, |
"youtube.com", |
"Video", |
-2 |
], |
[ |
3, |
1178, |
1, |
"Bukas na opisina", |
"Pagsusulat", |
2 |
], |
[ |
4, |
709, |
1, |
"moodle.bilkent.edu.tr", |
"Pangkalahatang Sanggunian & Pag-aaral", |
2 |
], |
[ |
5, |
602, |
1, |
"google.com.tr", |
"Maghanap", |
2 |
], |
[ |
6, |
439, |
1, |
"reddit.com", |
"Pangkalahatang Balita & Opinion", |
-2 |
], |
[ |
7, |
437, |
1, |
"tr.sharelatex.com", |
"Pagsusulat", |
2 |
], |
[ |
8, |
361, |
1, |
"yemeksepeti.com", |
"Pangkalahatang Pamimili", |
-2 |
], |
[ |
9, |
356, |
1, |
"Gmail", |
"Email", |
0 |
], |
[ |
10, |
328, |
1, |
"Google Chrome", |
"Mga Browser", |
0 |
], |
[ |
11, |
207, |
1, |
"stars.bilkent.edu.tr", |
"Pangkalahatang Sanggunian & Pag-aaral", |
2 |
], |
[ |
12, |
179, |
1, |
"whatsapp", |
"Instant na Mensahe", |
-1 |
], |
tingnan ang rawdata.json na naka-host sa ❤ ng GitHub
buod.json
[ |
{ |
"id": 1515657600, |
"date": "2018-01-11", |
"productivity_pulse": 54, |
"very_productive_percentage": 34.2, |
"produktibong_percentage": 10.6, |
"neutral_percentage": 25.6, |
"distracting_percentage": 0.0, |
"very_distracting_percentage": 29.6, |
"all_productive_percentage": 44.8, |
"all_distracting_percentage": 29.6, |
"uncategorized_percentage": 16.1, |
"business_percentage": 6.0, |
"communication_and_scheduling_percentage": 4.3, |
"social_networking_percentage": 0.0, |
"design_and_composition_percentage": 0.0, |
"entertainment_percentage": 15.2, |
"news_percentage": 3.3, |
"software_development_percentage": 5.4, |
"reference_and_learning_percentage": 22.8, |
"shopping_percentage": 12.9, |
"utilities_percentage": 14.1, |
"total_hours": 2.51, |
"very_productive_hours": 0.86, |
"effective_hours": 0.27, |
"neutral_hours": 0.64, |
"distracting_hours": 0.0, |
"very_distracting_hours": 0.74, |
"all_productive_hours": 1.12, |
"all_distracting_hours": 0.74, |
"uncategorized_hours": 0.4, |
"business_hours": 0.15, |
"communication_and_scheduling_hours": 0.11, |
"social_networking_hours": 0.0, |
"design_and_composition_hours": 0.0, |
"entertainment_hours": 0.38, |
"news_hours": 0.08, |
"software_development_hours": 0.13, |
"reference_and_learning_hours": 0.57, |
"shopping_hours": 0.32, |
"utilities_hours": 0.35, |
"total_duration_formatted": "2h 30m", |
"very_productive_duration_formatted": "51m 26s", |
"produktibo_duryan_formatted": "15m 56s", |
"neutral_duras_formatted": "38m 34s", |
"distracting_duration_formatted": "walang oras", |
"very_distracting_duration_formatted": "44m 30s", |
"all_productive_duration_formatted": "1h 7m", |
"all_distracting_duration_formatted": "44m 30s", |
"uncategorized_duration_formatted": "24m 11s", |
"business_duration_formatted": "9m 6s", |
"communication_and_scheduling_duration_formatted": "6m 26s", |
"social_networking_duration_formatted": "walang oras", |
"design_and_composition_duration_formatted": "walang oras", |
"entertainment_duration_formatted": "22m 49s", |
"news_duration_formatted": "4m 55s", |
"software_development_duration_formatted": "8m 3s", |
"reference_and_learning_duration_formatted": "34m 17s", |
"shopping_duration_formatted": "19m 22s", |
"utilities_duras_formatted": "21m 17s" |
}, |
{ |
"id": 1515571200, |
"date": "2018-01-10", |
"productivity_pulse": 33, |
"very_productive_percentage": 21.9, |
"produktibong_percentage": 2.3, |
"neutral_percentage": 14.4, |
"distracting_percentage": 11.0, |
"very_distracting_percentage": 50.3, |
"all_productive_percentage": 24.2, |
"all_distracting_percentage": 61.4, |
"uncategorized_percentage": 0.3, |
"business_percentage": 0.0, |
"communication_and_scheduling_percentage": 13.5, |
"social_networking_percentage": 0.0, |
"design_and_composition_percentage": 6.3, |
"entertainment_percentage": 44.7, |
"news_percentage": 4.2, |
"software_development_percentage": 0.0, |
"reference_and_learning_percentage": 15.5, |
"shopping_percentage": 0.0, |
"utilities_percentage": 15.4, |
"total_hours": 2.24, |
"very_productive_hours": 0.49, |
"effective_hours": 0.05, |
"neutral_hours": 0.32, |
"distracting_hours": 0.25, |
"very_distracting_hours": 1.13, |
"all_productive_hours": 0.54, |
"all_distracting_hours": 1.37, |
"uncategorized_hours": 0.01, |
"business_hours": 0.0, |
"communication_and_scheduling_hours": 0.3, |
"social_networking_hours": 0.0, |
"design_and_composition_hours": 0.14, |
"entertainment_hours": 1.0, |
"news_hours": 0.09, |
"software_development_hours": 0.0, |
"reference_and_learning_hours": 0.35, |
"shopping_hours": 0.0, |
"utilities_hours": 0.34, |
"total_duration_formatted": "2h 14m", |
"very_productive_duration_formatted": "29m 22s", |
"produktibo_duryan_formatted": "3m 8s", |
"neutral_duras_formatted": "19m 18s", |
"distracting_duration_formatted": "14m 48s", |
"very_distracting_duration_formatted": "1h 7m", |
"all_productive_duration_formatted": "32m 30s", |
"all_distracting_duration_formatted": "1h 22m", |
"uncategorized_duration_formatted": "27s", |
"business_duration_formatted": "1s", |
"communication_and_scheduling_duration_formatted": "18m 5s", |
"social_networking_duration_formatted": "walang oras", |
"design_and_composition_duration_formatted": "8m 30s", |
"entertainment_duration_formatted": "59m 54s", |
"news_duration_formatted": "5m 39s", |
"software_development_duration_formatted": "walang oras", |
"reference_and_learning_duration_formatted": "20m 51s", |
"shopping_duration_formatted": "walang oras", |
"utilities_duration_formatted": "20m 39s" |
}, |
{ |
"id": 1515484800, |
"date": "2018-01-09", |
"productivity_pulse": 68, |
"very_productive_percentage": 60.4, |
"produktibong_percentage": 0.5, |
"neutral_percentage": 11.0, |
"distracting_percentage": 7.1, |
"very_distracting_percentage": 21.0, |
"all_productive_percentage": 60.9, |
"all_distracting_percentage": 28.1, |
"uncategorized_percentage": 9.1, |
"business_percentage": 21.9, |
"communication_and_scheduling_percentage": 7.2, |
"social_networking_percentage": 5.1, |
"design_and_composition_percentage": 1.2, |
"entertainment_percentage": 1.6, |
"news_percentage": 12.5, |
"software_development_percentage": 9.1, |
"reference_and_learning_percentage": 28.2, |
"shopping_percentage": 2.9, |
"utilities_percentage": 1.2, |
"total_hours": 2.78, |
"very_productive_hours": 1.68, |
"effective_hours": 0.01, |
"neutral_hours": 0.31, |
"distracting_hours": 0.2, |
"very_distracting_hours": 0.58, |
"all_productive_hours": 1.69, |
"all_distracting_hours": 0.78, |
"uncategorized_hours": 0.25, |
"business_hours": 0.61, |
"communication_and_scheduling_hours": 0.2, |
"social_networking_hours": 0.14, |
"design_and_composition_hours": 0.03, |
"entertainment_hours": 0.04, |
"news_hours": 0.35, |
"software_development_hours": 0.25, |
"reference_and_learning_hours": 0.78, |
"shopping_hours": 0.08, |
"utilities_hours": 0.03, |
"total_duration_formatted": "2h 46m", |
"very_productive_duration_formatted": "1h 40m", |
"produktibo_duryan_formatted": "47s", |
"neutral_duras_formatted": "18m 23s", |
"distracting_duration_formatted": "11m 49s", |
"very_distracting_duration_formatted": "34m 57s", |
"all_productive_duration_formatted": "1h 41m", |
"all_distracting_duration_formatted": "46m 46s", |
"uncategorized_duration_formatted": "15m 7s", |
"business_duration_formatted": "36m 26s", |
"communication_and_scheduling_duration_formatted": "11m 59s", |
"social_networking_duration_formatted": "8m 28s", |
"design_and_composition_duration_formatted": "2m 4s", |
"entertainment_duration_formatted": "2m 39s", |
"news_duration_formatted": "20m 49s", |
"software_development_duration_formatted": "15m 5s", |
"reference_and_learning_duration_formatted": "46m 59s", |
"shopping_duration_formatted": "4m 51s", |
"utilities_duras_formatted": "2m 3s" |
} |
] |
tingnan ang rawsummary.json na naka-host sa ❤ ng GitHub
Hakbang 4: Prototyping
Grand Prize sa Raspberry Pi Contest 2017