| [03:36:16] | * kadaan has joined #farmos |
| [05:00:50] | * kadaan has quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| [08:07:08] | * JustTB has joined #farmos |
| [08:15:23] | * JustTB has quit (Quit: Leaving.) |
| [10:59:57] | * Kadaan has joined #farmos |
| [11:14:49] | <Kadaan> | @mstenta. I was looking into the map layer issue, but I noticed some weird behavior. After a fresh install, the map worked fine. Then after getting the latest of openlayers (git init, git remote add ..., git checkout 7.x-3.x, etc.) the map stopped working due to a missing API key. I followed the instructions about setting up the API key and that error went |
| [11:14:49] | <Kadaan> | away. Now I get an error from google about the version of the API that openlayers is hitting is retired. I tried switching to the latest version of the openlayers API from CDN, but that didn't help. Any ideas? |
| [11:29:27] | <mstenta> | Kadaan: hi |
| [11:30:02] | <mstenta> | i see that warning about the api version too with Openlayers 7.x-3.1 (the version included with farmOS) - but the map still works |
| [11:30:08] | <mstenta> | is your map not working at all? |
| [11:32:19] | <Kadaan> | I can get a tan bases layer |
| [11:32:31] | <Kadaan> | I'll be home in a few minutes I can try again |
| [11:32:51] | <mstenta> | Oh actually - I also see the NoApiKeys warning... |
| [11:33:03] | <mstenta> | (on my local testing site I don't have API keys included) |
| [11:33:15] | <mstenta> | I wonder if Google's API can tell whether or not it's a public site |
| [11:33:58] | <mstenta> | Kadaan: one thing to note - the 7.x-3.x branch of the Openlayers module made major changes to the way that the Google Maps layers work |
| [11:34:13] | <Kadaan> | So, I added a key in the openlayers UI |
| [11:34:41] | <Kadaan> | Actually, I'm on the branch that is green in drupal |
| [11:34:45] | <mstenta> | what version of Openlayers are you using? |
| [11:34:53] | <mstenta> | is it the stock one that came with farmOS? |
| [11:35:21] | <mstenta> | the version that is packaged with farmOS is actually 7.x-3.1 (the current recommended release) plus a few patches that I added to fix some things |
| [11:36:27] | <mstenta> | (it's worth warning you ahead of time: the Openlayers and mapping stuff in farmOS is THE MOST COMPLICATED PART of the whole system - and i've had to fix many OL bugs in the process of making it work) |
| [11:36:41] | <mstenta> | so you're jumping into the deep end here, FYI... ;-) |
| [11:38:07] | <mstenta> | Kadaan: as an aside... i started working on the CSV export stuff last night! i decided that i would really like to have at least a basic CSV export of lists in the 1.0 release - it's one of the most commonly requested features |
| [11:39:29] | <Kadaan> | Great. I have started some work on that too. I had added the CSV export into all the lists and it seemed to work just fine. I just wasn't really happy with how much duplicated work I had to do |
| [11:40:07] | <Kadaan> | I'm willing to skip the map stuff then. Any suggestion on what to look at next |
| [11:40:07] | <mstenta> | oh cool i didn't know you started it |
| [11:40:21] | <mstenta> | remind me: what were you going to look at with the map stuff? |
| [11:40:49] | <Kadaan> | I wanted to check if multiple base layers works now |
| [11:40:54] | <mstenta> | ooh ok |
| [11:41:08] | <Kadaan> | Is based on the conversation we had earlier and IRC. You said it might work now because they've made a ton of changes |
| [11:41:16] | <Kadaan> | I see that the bug is still open on open layers |
| [11:41:24] | <Kadaan> | Along with the fullscreen bug |
| [11:41:27] | <mstenta> | yea i remember now |
| [11:42:07] | <Kadaan> | So maybe it isn't fixed |
| [11:42:15] | <mstenta> | i've been procrastinating on testing that new stuff out |
| [11:42:29] | <mstenta> | i've had a few long OL debugging sessions |
| [11:42:44] | <mstenta> | at times in the past when things were updated |
| [11:42:57] | <mstenta> | so i'm expecting that again |
| [11:43:25] | <mstenta> | you can leave that stuff to me if you want - i've managed to get a pretty good understanding of that module... for better or worse |
| [11:43:58] | <mstenta> | i'm not going to be online much today... some errands to do - and i'm hoping to get garlic in the ground |
| [11:44:22] | <mstenta> | do you want to work on the time tracking module? |
| [11:44:55] | <mstenta> | maybe we could discuss that a bit - how to get it started at least |
| [11:47:23] | * kadaan_ has joined #farmos |
| [11:47:45] | <kadaan_> | Regarding openlayers, I'm on 7.x-3.x |
| [11:51:47] | <mstenta> | i'm going to start a quick log_timesheet module |
| [11:51:52] | <kadaan_> | Nice |
| [11:52:04] | <mstenta> | just a skeleton to start with |
| [11:52:48] | <kadaan_> | That would be great |
| [11:52:58] | <kadaan_> | Here is what I started on for CSV export: https://github.com/kadaan/farm_log/tree/CsvExport |
| [11:53:33] | <mstenta> | cool thanks! |
| [11:53:40] | <mstenta> | kadaan_: https://github.com/mstenta/log_timesheet |
| [11:54:00] | <mstenta> | just an initial commit - but that right there is the BARE MINIMUM for a Drupal module |
| [11:54:04] | <mstenta> | *.module and *.info file |
| [11:54:12] | <kadaan_> | It isn't really complete, but I was able to get a CSV export from that. |
| [11:54:13] | <mstenta> | it doesn't do anything, but you could install it |
| [11:54:30] | <kadaan_> | Is it published to drupal, or should I just git clone? |
| [11:54:41] | <mstenta> | the next thing we'll want to do is add a *.install file, which has a hook_schema() function to define the new database table that we want to add |
| [11:54:49] | <mstenta> | it's not on drupal.org yet, no - just github |
| [11:55:00] | <mstenta> | so yea - git clone for now |
| [11:55:09] | <kadaan_> | Should it be in .data/www/profiles/farm/modules/dev? |
| [11:55:12] | <mstenta> | and/or fork in github |
| [11:55:24] | <mstenta> | i have mind in .data/www/sites/all/modules/git |
| [11:55:40] | <mstenta> | but ultimately it will go in .data/www/profiles/farm/modules/contrib |
| [11:55:54] | <mstenta> | because it will be a module on drupal.org (aka a contrib module) |
| [11:56:03] | <mstenta> | it doesn't really matter where you put it now |
| [11:56:13] | <mstenta> | just know that sometimes moving modules can cause issues in the future... |
| [11:56:20] | <mstenta> | but they are always solveable |
| [11:59:37] | <mstenta> | the reason i put it in sites/all/modules is because the Docker entrypoint script is set up to preserve the sites folder if the codebase gets rebuilt |
| [12:00:00] | <mstenta> | so if you were to manually trigger a rebuild of the farmOS codebase, any custom stuff in profiles/... would be lost |
| [12:00:42] | <kadaan_> | I'm gonna setup from scratch real quick. |
| [12:01:58] | <mstenta> | ok |
| [12:02:15] | <mstenta> | i'm sketching up a quick schema hook to create a database table |
| [12:02:30] | <mstenta> | should be self-explanatory once you see it... |
| [12:02:46] | <mstenta> | can we brainstorm what that schema should look like real quick? |
| [12:03:00] | <mstenta> | it will be a new database table called log_timesheet - that is associated with logs |
| [12:03:28] | <mstenta> | so it will have an "id" column that corresponds to the primary id key in the "log" database table |
| [12:03:52] | <mstenta> | we'll also want a "uid" to reference the user that is punching in/out, right? |
| [12:04:02] | <mstenta> | and a start and stop time |
| [12:04:21] | <mstenta> | can you think of anything else? maybe that's it? |
| [12:05:16] | <kadaan_> | That seems good. |
| [12:05:27] | <mstenta> | ok |
| [12:05:33] | <mstenta> | so wait until i get this done before you install the module |
| [12:05:34] | <kadaan_> | Are we going to show a list of punch ins and outs? |
| [12:05:43] | <mstenta> | because database tables are only installed when a module is installed the first time |
| [12:05:55] | <mstenta> | so if you install before that, you'll have to uninstall and reinstall to get the schema |
| [12:06:10] | <mstenta> | yea i think that would be cool to have a list of clocked times for each log |
| [12:06:17] | <mstenta> | with the user who did them |
| [12:06:45] | <mstenta> | then from there we could also build other things... like a page that lists all the work times of a particular user, across all logs |
| [12:07:09] | <kadaan_> | If so, then are we going to "calculate" the duration in the view? |
| [12:07:18] | <mstenta> | hmm good question |
| [12:07:27] | <kadaan_> | using something like: https://www.drupal.org/project/computed_field |
| [12:07:44] | <kadaan_> | And what about csv export? Will computed duration work with that? |
| [12:08:02] | <kadaan_> | Quick change of subject. What do you use to get persistent IRC? |
| [12:08:22] | <mstenta> | persistent irc? |
| [12:09:11] | <mstenta> | hmm - let's give the calculated duration stuff some more thought... i'll think through the options... there are a bunch of other things that can be done in the meantime |
| [12:09:25] | <mstenta> | like setting up the punch in/punch out UI |
| [12:09:52] | <mstenta> | i don't think we'll need computed field |
| [12:10:11] | <mstenta> | we can provide our own Views Field Handler that can do the calculation - if that ends up being the best option |
| [12:10:23] | <mstenta> | (keeping dependencies minimal) |
| [12:10:35] | <kadaan_> | persistent irc: when you are away from your computer, still getting the full irc history. |
| [12:10:45] | <kadaan_> | Okay |
| [12:11:06] | <mstenta> | oh hmm... well - i generally just leave my IRC client open, and have it set up to log |
| [12:11:11] | <mstenta> | but also farmBOT maintains a log |
| [12:11:15] | <mstenta> | farmBOT: log pointer? |
| [12:11:15] | <farmBOT> | http://farmier.com/bot/log/farmOS/2016-11-05#T14430 |
| [12:11:34] | <kadaan_> | Oh. Cool! |
| [12:11:43] | <mstenta> | yea! :-) helps to look back on |
| [12:11:59] | <mstenta> | i think i showed you this already, but you can also tell farmBOT to save messages for people |
| [12:12:08] | <mstenta> | farmBOT: tell kadaan_ what's up! |
| [12:12:08] | <farmBOT> | mstenta: I'll pass that on when kadaan_ is around. |
| [12:12:23] | <kadaan_> | I wasnt sure what you wrote to get it to work. |
| [12:12:23] | <farmBOT> | kadaan_: 15 sec ago <mstenta> tell kadaan_ what's up! |
| [12:12:34] | <mstenta> | farmBOT: help |
| [12:12:34] | <farmBOT> | Detailed information is available with "BOTNAME: help <feature>" where <feature> is one of: Botagotchi, Factoids, Karma, Logging, Reminders, Seen, Tell, Timezones. |
| [12:12:39] | <kadaan_> | help |
| [12:12:43] | <kadaan_> | farmBOT: help |
| [12:12:43] | <farmBOT> | Detailed information is available with "BOTNAME: help <feature>" where <feature> is one of: Botagotchi, Factoids, Karma, Logging, Reminders, Seen, Tell, Timezones. |
| [12:12:56] | <kadaan_> | farmBOT: help tell |
| [12:12:56] | <farmBOT> | Queue messages with "BOTNAME: tell Morbus that his bot_module help messages are awesome." Queued messages will be delivered publicly when the recipient sends a message to the channel. |
| [12:13:10] | <kadaan_> | farmBOT: tell mstenta Hi |
| [12:13:10] | <farmBOT> | kadaan_: I'll pass that on when mstenta is around. |
| [12:13:13] | <kadaan_> | Cool |
| [12:13:33] | <mstenta> | the tricky part with that is that if a user's name changes (ie: Kadaan vs kadaan_) they might not get the message ... at least i assume that's the caase |
| [12:13:33] | <farmBOT> | mstenta: 23 sec ago <kadaan_> tell mstenta Hi |
| [12:14:00] | <mstenta> | farmBOT: tell Kadaan test test test? |
| [12:14:00] | <farmBOT> | mstenta: I'll pass that on when Kadaan is around. |
| [12:14:03] | <kadaan_> | Yeah. That happens due to me being logged in via phone and computer. |
| [12:14:08] | <mstenta> | yea that didn't work |
| [12:14:10] | <kadaan_> | :( |
| [12:14:13] | <mstenta> | ok that's what i figured |
| [12:14:36] | <mstenta> | do you have a preferred one that i should leave messages on? i think i've always just done "kadaan" |
| [12:15:12] | <kadaan_> | That is fine. |
| [12:15:16] | <kadaan_> | I get it all on my phone. |
| [12:15:27] | <kadaan_> | Though I don't pay for IRC clout. |
| [12:15:50] | <kadaan_> | I'll probably be setting up znc on my windows home server so that I don't have to worry about this anymore. |
| [12:16:35] | <kadaan_> | Is there any way to have the database install screen pre-populated? |
| [12:16:51] | <kadaan_> | Not really a big issue. |
| [12:17:32] | <mstenta> | hmm not sure |
| [12:17:41] | <mstenta> | here i added a database table: https://github.com/mstenta/log_timesheet/commit/e9599fe3a889d62db887d028... |
| [12:17:57] | <mstenta> | oops forgot the docblock... one sec |
| [12:18:02] | <kadaan_> | Cool. Installing and let me pull it. |
| [12:18:30] | <mstenta> | ok - i force pushed |
| [12:18:40] | <mstenta> | so make sure you get the right commit |
| [12:18:52] | <kadaan_> | On a dev note, I have to run `sudo chmod -R g=u .data` before I can work on the modules in .data |
| [12:18:58] | <mstenta> | sorry - i try not to force push but since we're just starting this repo i did |
| [12:19:29] | <mstenta> | ah ok yea... i think i did something similar |
| [12:19:36] | <mstenta> | i made a github issue to document it: https://github.com/farmOS/farmOS/issues/21 |
| [12:19:45] | <mstenta> | i did |
| [12:19:45] | <mstenta> | sudo chown -R ${USER} .data/www |
| [12:20:08] | <mstenta> | not sure what makes the most sense... i figure we'll see as we god |
| [12:20:10] | <mstenta> | go* |
| [12:21:01] | <mstenta> | i think the .data/www/sites/default folder needs to at least have a group of www-data |
| [12:21:02] | <mstenta> | i THINK |
| [12:21:25] | <mstenta> | so that Drupal can write to sites/default/files during normal use... and sites/default/settings.php during install |
| [12:21:57] | <mstenta> | i left .data/db alone because that doesn't need to be edited manually at all |
| [12:22:59] | <mstenta> | take a look at that log_timesheet_schema() function in the log_timesheet.install file i just added... it's a good first example of how Drupal's hook system works |
| [12:23:06] | <mstenta> | are you familiar with the hook system already? |
| [12:24:08] | <mstenta> | Drupal 7 and less uses hooks for most things that modules need to provide/alter... Drupal 8 moves a lot more towards object oriented architecture, and plugins, but there are still a lot of hooks |
| [12:24:26] | <mstenta> | hooks work basically through naming convention |
| [12:24:57] | <mstenta> | so there are various places in Drupal code that say "hey all you modules! do any of you have a function named [modulename]_[hookname]?" and then it runs them |
| [12:25:03] | <kadaan_> | sudo chmod -R g=u .data just copies the user permissions to the group |
| [12:25:27] | <kadaan_> | and on my machine, OS X, the user=root and group=staff. |
| [12:25:32] | <mstenta> | oh ok |
| [12:25:35] | <kadaan_> | My user is in staff |
| [12:25:36] | <mstenta> | that makes sense |
| [12:25:47] | <mstenta> | yea... so we'll probably want to document what works best one each OS |
| [12:26:07] | <kadaan_> | So maybe sudo chmod -R g=u .data/www |
| [12:26:24] | <mstenta> | yea cuz you don't need to edit the database files |
| [12:26:46] | <mstenta> | oh one thing though... |
| [12:26:47] | <kadaan_> | I'm not familiar with the hook system. |
| [12:26:58] | <mstenta> | those permission changes might show up as modifications in Git |
| [12:27:30] | <kadaan_> | Annoying... |
| [12:27:33] | <mstenta> | mm |
| [12:27:39] | <mstenta> | yea so i think you would be better off just changing the user |
| [12:27:45] | <mstenta> | sorry... i mean the owner |
| [12:27:48] | <mstenta> | but leave the group alone |
| [12:27:56] | <kadaan_> | Yeah. That seems good. |
| [12:28:06] | <kadaan_> | Let me kill and try again :) |
| [12:28:09] | <mstenta> | okedoke |
| [12:28:19] | <mstenta> | oh! wait! |
| [12:28:27] | <mstenta> | do you want to see how to trigger a rebuild? |
| [12:28:33] | <mstenta> | without losing db or sites folder |
| [12:28:59] | <kadaan_> | Just destroyed it. |
| [12:29:03] | <mstenta> | ah ok :-) |
| [12:29:06] | <mstenta> | for future reference... |
| [12:29:25] | <mstenta> | you can trigger the farmOS codebase to be rebuilt when the container is started, simply by deleting profiles/farm/farm.info |
| [12:29:37] | <mstenta> | but it will NOT touch the sites/... folder |
| [12:29:47] | <mstenta> | so your database can remain, and your settings.php and files can remain |
| [12:30:22] | <mstenta> | although i guess in this case since you recursively changes all the perms, it might make sense to start fresh anyway |
| [12:31:31] | <kadaan_> | What about profiles? |
| [12:31:49] | <kadaan_> | Does that get blown away? |
| [12:32:41] | <kadaan_> | If so, then if I have say farm_log in profiles/farm/modules/farm, can I override it by installing it to sites/all/modules. |
| [12:32:53] | <kadaan_> | That way it would survive a rebuilt? |
| [12:33:42] | <kadaan_> | If that is the case I wonder if it would be better to recommend that all dev happen in sites/all/modules |
| [12:34:00] | <mstenta> | yes profiles gets blown away |
| [12:34:12] | <mstenta> | yes - anything in sites/all will override stuff in profiles |
| [12:34:15] | <kadaan_> | So maybe I should: |
| [12:34:27] | <mstenta> | yes probably makes sense to recommend that |
| [12:34:35] | <kadaan_> | 1. git clone https://github.com/kadaan/farmOS.git |
| [12:34:47] | <kadaan_> | 2. cd farmOS |
| [12:34:59] | <kadaan_> | 3. docker-compose up |
| [12:35:27] | <kadaan_> | 4. When done, clone any modules to work on in .data/www/sites/all/modules |
| [12:35:44] | <mstenta> | yea that would work |
| [12:35:46] | <kadaan_> | In which case, do I really need to chown anything other than .data/www/sites |
| [12:35:52] | <mstenta> | no not really |
| [12:36:14] | <kadaan_> | Then maybe that is the best. |
| [12:36:15] | <mstenta> | it might come in handy if you're doing DEEP debugging... but not most of the time |
| [12:36:21] | <mstenta> | yea agreed |
| [12:36:32] | <kadaan_> | Done |
| [12:36:36] | <mstenta> | maybe the docker entrypoint script should just clone all the repos into sites/all in the first place |
| [12:37:01] | <mstenta> | for now, at the very least, you can just copy the folder from profiles/farm/modules to sites/all/modules - and then work with it |
| [12:37:07] | <mstenta> | maybe that's better practice |
| [12:37:17] | <mstenta> | gotta tend to the baby... back in a few! |
| [12:37:22] | <kadaan_> | Cool. |
| [12:37:34] | <kadaan_> | That sounds good. |
| [12:37:44] | <kadaan_> | I'll have to head out in a few and shovel gravel. |
| [12:37:53] | <kadaan_> | Tonight maybe I will work on voting api. |
| [12:37:58] | <kadaan_> | Anything I should know about. |
| [12:43:00] | <kadaan_> | It seems like it would be pretty simple to just add them via the drupal UI, configure them, and then "export" them. |
| [12:48:18] | <mstenta> | yea! i think that's all it would take |
| [12:48:30] | <mstenta> | that sounds great! |
| [12:48:37] | <mstenta> | i update the time tracking issue with some notes and ideas |
| [12:48:42] | <mstenta> | i'll* |
| [13:49:01] | * Kadaan has quit (Quit: Connection closed for inactivity) |
| [13:54:55] | <svenn> | mstenta: I am trying to communicate with farmBOT through private messages (/msg) but it doesn't seem to react to that |
| [13:57:02] | <svenn> | were out on a SAR mission today. Neighbour was missing since tuesday. Left home with a rifle and left a letter at a cabin in the mountains. |
| [13:57:54] | <svenn> | we were screening the mountainside as he called his cousin (on my search group) on the mobile. |
| [13:58:05] | <svenn> | HE WAS ALIVE |
| [13:59:19] | <mstenta> | svenn: WOW! |
| [13:59:27] | <mstenta> | that's crazy! |
| [13:59:33] | <svenn> | It is. |
| [13:59:39] | <mstenta> | he's ok? |
| [13:59:53] | <svenn> | He is unhurt |
| [13:59:56] | <mstenta> | that's good |
| [14:00:04] | <svenn> | but he had a crisis |
| [14:00:04] | <mstenta> | had he gotten lost? |
| [14:00:08] | <svenn> | no |
| [14:00:17] | <svenn> | he knew every second where he was |
| [14:00:20] | <mstenta> | oh |
| [14:00:31] | <svenn> | he played cat and mouse with the SAR team |
| [14:00:44] | <mstenta> | oh no |
| [14:00:49] | <mstenta> | so it was on purpose |
| [14:00:58] | <svenn> | we don't know yet. |
| [14:01:02] | <mstenta> | ok |
| [14:01:04] | <mstenta> | wow |
| [14:01:34] | <svenn> | this is the largest SAR operation in this area ever. |
| [14:01:56] | <mstenta> | wow |
| [14:02:03] | <mstenta> | crazy! |
| [14:02:04] | <svenn> | And we are just so happy that we got him back home |
| [14:02:10] | <mstenta> | yea! |
| [14:02:26] | <mstenta> | do they think it is a mental health problem? |
| [14:02:30] | <svenn> | I learned a lot about need for proper gps and maps |
| [14:02:37] | <mstenta> | i bet! |
| [14:02:53] | <svenn> | no, he has had mental health like an ox |
| [14:03:07] | <svenn> | this is a mountainman stubborn as hell |
| [14:03:12] | <mstenta> | ok hmm |
| [14:03:23] | <mstenta> | what did the letter say that he left behind? |
| [14:03:37] | <svenn> | that has been kept secret so far |
| [14:04:03] | <svenn> | need to keep the high hopes up |
| [14:04:42] | <mstenta> | wow yea |
| [14:04:48] | <mstenta> | well good job finding him! |
| [14:05:00] | <mstenta> | i hope it all works out for the better in the end |
| [14:05:31] | <svenn> | he will have to face the community at some point. |
| [14:05:59] | <svenn> | I think I will hug him, if a mountainman allows any man hugging him. |
| [14:06:18] | <svenn> | :) |
| [14:06:21] | <mstenta> | haha |
| [14:07:15] | <mstenta> | svenn: you mentioned that farmBOT wasn't working? |
| [14:07:44] | <svenn> | I tried to communicate with him on a private thread with /msg |
| [14:07:48] | <mstenta> | i just tried private messaging him... it looks like you still need to say "farmBOT: " ahead of the message |
| [14:07:55] | <svenn> | ok |
| [14:08:05] | <svenn> | I didn't do that |
| [14:08:29] | <mstenta> | but it also looks like it doesn't work for certain things... like "log pointer?" doesn't work... probably because that is related to what room you are in |
| [14:08:40] | <mstenta> | and /msg is outside of any room i think |
| [14:08:50] | <svenn> | think so too. |
| [14:09:21] | <svenn> | and then he will maybe sit and watch the private window? |
| [14:09:50] | <mstenta> | no i don't think so, because i need to configure which rooms are logged |
| [14:10:01] | <mstenta> | right now it is just #farmOS and #drupal-ledger |
| [14:10:17] | <svenn> | ok |
| [14:11:03] | <mstenta> | oh cool you can set reminders! |
| [14:11:06] | <mstenta> | i didn't even know that |
| [14:11:08] | <svenn> | basically don't need him as I use irssi and screen on a hosted linux so I am on 24/7 |
| [14:11:45] | <mstenta> | farmBOT: remind farmBOT in 1 minute that farmOS is awesome |
| [14:11:45] | <farmBOT> | mstenta: I'll remind farmBOT about that on Sat, 05 Nov 2016 14:12:45 -0400. |
| [14:11:53] | <svenn> | traffic on farmos is little, so I have most in the scroll window |
| [14:12:07] | <mstenta> | svenn: yea i just keep my irc client open most of the time too |
| [14:12:19] | <mstenta> | the log on farmier.com is helpful to glance at if i'm away from my computer |
| [14:12:25] | <mstenta> | i don't have IRC on my phone yet |
| [14:12:57] | <farmBOT> | farmBOT: mstenta asked me to remind you that farmOS is awesome |
| [14:13:01] | <mstenta> | haha |
| [14:13:06] | <svenn> | farmBOT: thank you |
| [14:13:06] | <farmBOT> | de rien |
| [14:13:20] | <mstenta> | nice! did you add that? :-) |
| [14:13:20] | <svenn> | farmBOT: what? |
| [14:13:44] | <svenn> | I said thankk you to farmBOT |
| [14:13:54] | <mstenta> | farmBOT: thank you |
| [14:13:54] | <farmBOT> | no worries |
| [14:14:02] | <mstenta> | oh cool - it must already have those responses programmed to |
| [14:14:09] | <mstenta> | i'm learning new things about farmBOT all the time! haha |
| [14:14:14] | <svenn> | farmBOT: what is the time? |
| [14:14:25] | <svenn> | farmBOT: date? |
| [14:14:45] | <svenn> | That is the kind of stuff I want a private window for :) |
| [14:14:47] | <mstenta> | farmBOT: remind hello everyone in 10 seconds that this is a test |
| [14:14:57] | <mstenta> | hmm that didn't work |
| [14:15:10] | <mstenta> | i'm trying to see how i can set up a reminder for the monthly call that will go out to everyone |
| [14:15:18] | <mstenta> | i guess just telling farmBOT to remind itself is the best way |
| [14:17:13] | <mstenta> | farmBOT: remind farmBOT on Wed, 9 Nov 2016 12:30 -0400 that the farmOS monthly call begins at 1pm EST - http://farmOS.org/community/monthly-call |
| [14:17:13] | <farmBOT> | mstenta: I'll remind farmBOT about that on Wed, 09 Nov 2016 11:30:00 -0500. |
| [14:17:41] | <mstenta> | oops... it did some timezone adjustment there... |
| [14:18:00] | <mstenta> | i'm confused... |
| [14:18:13] | <mstenta> | it probably doesn't help that daylight savings time ends tomorrow! ugh |
| [14:18:32] | <mstenta> | oh well... good enough i suppose |
| [14:18:34] | <svenn> | daylight was last week here in europe |
| [14:18:42] | <mstenta> | oh really |
| [14:18:46] | <mstenta> | that's even more confusing!!! |
| [14:19:07] | <mstenta> | so wait... what countries in europe observe DST? |
| [14:19:31] | <mstenta> | i didn't even know europe observed DST at all |
| [14:19:50] | <mstenta> | are my times wrong on the monthly-call page? http://farmOS.org/community/monthly-call |
| [14:21:40] | <svenn> | Oh, you have used UTC. that can be interresting. |
| [14:21:48] | <mstenta> | farmBOT: remind farmBOT on Wed, 14 Dec 2016 12:30 that the farmOS monthly call begins at 1pm EST - http://farmOS.org/community/monthly-call |
| [14:21:48] | <farmBOT> | mstenta: I'll remind farmBOT about that on Wed, 14 Dec 2016 12:30:00 -0500. |
| [14:22:07] | <mstenta> | uh oh... i thought that would make things more clear... was i wrong? |
| [14:22:27] | <svenn> | no, but the users need to find their current UTC |
| [14:22:37] | <svenn> | current time compared to UTC |
| [14:22:43] | <mstenta> | hmm |
| [14:22:55] | <mstenta> | ok, so maybe it's ok |
| [14:23:10] | <svenn> | as for international team it is excellent |
| [14:23:15] | <mstenta> | ok |
| [14:23:25] | <mstenta> | i tried to keep it so that it is always 1pm EST (my zone) |
| [14:23:35] | <mstenta> | but that means that it changes relative to UTC and DST |
| [14:23:38] | <svenn> | problem is each individual need to know difference between local time and UTC |
| [14:23:44] | <mstenta> | yea |
| [14:23:57] | <mstenta> | maybe i could include a link that helps to calculate |
| [14:24:28] | <svenn> | would be good |
| [14:24:52] | <svenn> | I have calculated tides for sailing, and all data there is related to UTC |
| [14:25:04] | <svenn> | so I know the issue |
| [14:25:38] | <svenn> | On the tests we always had to plan trips on the dates where DST hits |
| [14:26:13] | <svenn> | in areas where you get stuck on ground if you don't get the math correctly |
| [14:28:56] | <mstenta> | i'll be back in a bit... need to get some lime - hoping to do my fall garden prep tomorrow... taking soil tests, adding lime, planting garlic and winter rye |
| [14:29:09] | <mstenta> | talk to you later! |
| [15:19:53] | * Kadaan has joined #farmos |
| [15:26:21] | <Kadaan> | Have you thought about integration with QuickBooks? |
| [15:26:21] | <farmBOT> | Kadaan: 3 hours 12 min ago <mstenta> tell Kadaan test test test? |
| [16:28:38] | <mstenta> | Kadaan: yes i've thought a lot about bookkeeping in general, and a bit about QB specifically... |
| [16:28:55] | <mstenta> | also funny you should ask because right now i'm working on a client project to connect an Ubercart system to QB |
| [16:29:26] | <mstenta> | but with regard to farmOS - i plan to incorporate the Drupal Ledger module into it right from the start in Drupal 8 |
| [16:29:53] | <mstenta> | Ledger is another module that I started a while back that is found double-entry bookkeeping - a GnuCash clone sort of |
| [16:30:07] | <svenn> | oh, farm accounting in farmos? |
| [16:30:09] | <mstenta> | which is essentially does the same thing as Quickbooks |
| [16:30:39] | <mstenta> | but probably not everything that QB does, so there is also the possibility of making a Ledger-to-QB integration |
| [16:30:47] | <mstenta> | svenn: yes, in farmOS 2.x |
| [16:31:11] | <mstenta> | i'm planning on integrating Ledger directly into the concept of assets and logs right from the start |
| [16:31:30] | <mstenta> | so that costs, sales, etc are accounted for more natively |
| [16:31:31] | <svenn> | will you support account plans? |
| [16:31:49] | <mstenta> | what do you mean by account plans? |
| [16:32:16] | <svenn> | like all stuff related to tractor maintenance is 6240 |
| [16:32:33] | <svenn> | and stuff related to building maintenance is 6250 |
| [16:32:37] | <mstenta> | oh i see... like categorizing of costs |
| [16:32:44] | <svenn> | something like that |
| [16:33:00] | <svenn> | keeping deprecations and such |
| [16:33:08] | <mstenta> | yes, so the way Ledger works is you have a hierarchy of accounts, and debits/credits to them |
| [16:33:30] | <svenn> | I have to look into ledger |
| [16:33:43] | <mstenta> | i'm still figuring out how that will connect to farmOS assets/logs... but assets will probably be associated with specific accounts... |
| [16:33:45] | <svenn> | I need something online which me and my wife can share |
| [16:34:06] | <mstenta> | Ledger for Drupal 7 never had an official release, but it does provide some basic capabilities |
| [16:34:10] | <mstenta> | it is far from a complete system though |
| [16:34:49] | <svenn> | and I guess it is a sh*load of work to customize it to national regulations |
| [16:35:00] | <mstenta> | i got swept up with farmOS development, and haven't done much with Ledger in a while... but I see the ultimate future of farmOS+Ledger reviving it |
| [16:35:15] | <mstenta> | yes absolutely - but that is where modular design will help |
| [16:35:29] | <mstenta> | Ledger just focuses on the basics: accounts, debits/credits, sets of books, balancing accounts, etc |
| [16:35:42] | <mstenta> | but more specific features can be added on via other modules |
| [16:37:32] | <svenn> | I see |
| [16:38:43] | <mstenta> | there are already a few others who have gotten involved with Ledger development too |
| [16:38:59] | <mstenta> | so we can start to build two separate but complimentary communities around them |
| [16:42:42] | <mstenta> | the tricky part is trying to find time to work on the 8.x-2.x branch of farmOS, but also work on new features in 7.x-1.x at the same time |
| [16:42:55] | <mstenta> | i'm pushing to get an official 1.0 release together on the 7.x-1.x branch |
| [16:43:07] | <mstenta> | after which i will feel more comfortable redirecting some attention to 8.x-2.x |
| [16:43:19] | <mstenta> | but there is so much i want to do... always :-) |
| [17:25:48] | <kadaan_> | One worry I have is that if we try to have farmOS do too much natively it could be hard to ever be good at it all or get it complete. |
| [17:26:41] | <kadaan_> | There is so much involved in accounting for a business and the needed reports that it really is a whole other beast. |
| [17:31:24] | * kadaan_ has quit (Read error: Connection reset by peer) |
| [17:31:54] | * kadaan_ has joined #farmos |
| [17:40:21] | <mstenta> | agreed - so we shouldn't try to do everything |
| [17:40:33] | <mstenta> | but there is definite need to track costs associated with activities and assets |
| [17:40:52] | <mstenta> | so if we can get that, plus some good export capabilities - then folks can import that data to their tool of choice |
| [17:41:00] | <mstenta> | the same goes for mapping and working with geodata |
| [17:41:15] | <mstenta> | there are other more powerful, focused tools out there already - no need for us to cover them |
| [17:41:30] | <mstenta> | the main goal of farmOS should be to provide a starting place for ongoing data entry |
| [17:41:45] | <mstenta> | to make record easier, and at the tip of your fingers |
| [17:41:50] | <mstenta> | record keeping* |
| [17:42:11] | <mstenta> | and to help associating the many disparate elements of a farm together in one place |
| [17:43:20] | <mstenta> | that said, as time goes on some of the more obvious and easy features can continue to grow within farmOS and Ledger itself... making it easier to do more without requiring other programs... to a point, anyway |
| [17:43:34] | <mstenta> | we'll find a good balance :-) |
| [17:43:57] | <kadaan_> | That seems reasonable. |
| [17:45:47] | <kadaan_> | One other thing to think about is that even for people who start to use farmOS today, by the time Ledger is ready, they will have an established process around accounting. So being able to accommodate that could be useful. |
| [17:46:11] | <mstenta> | mm yea |
| [17:46:35] | <kadaan_> | Also, it really comes back to how you can use the data that has been collected in farmOS. At the moment, there really isn't a great way to create reports that would let you extract insights. |
| [17:46:41] | <mstenta> | so do you mean being able to import financial data into farmOS and associate it with logs and assets? or vice versa? |
| [17:46:59] | <kadaan_> | farmOS -> QB is the most obvious. |
| [17:47:04] | <mstenta> | yea agreed |
| [17:47:16] | <kadaan_> | QB -> farmOS is only useful if farmOS brings something more to the table. |
| [17:47:20] | <mstenta> | so farmOS would still serve as the initial point of entry for some of that data |
| [17:47:21] | <mstenta> | right |
| [17:47:50] | <kadaan_> | As it stands, I think one way to do farmOS -> QB would be with farmOS acting as a facade |
| [17:48:03] | <kadaan_> | Mainly for the data collection side. |
| [17:48:05] | <mstenta> | agreed about the reports - that's i think where things like the timesheet module, and Ledger integration will really shine |
| [17:48:25] | <mstenta> | yea i agree... for data collection, and organization of things in the context of the farm |
| [17:48:47] | <mstenta> | ie: QB doesn't care if you have cows or where you moved them or why |
| [17:48:51] | <kadaan_> | But also for client list, tracking profit back to crop, bed, foot, etc. |
| [17:48:58] | <mstenta> | yes exactly |
| [17:49:07] | <kadaan_> | True. |
| [17:49:20] | <kadaan_> | Really we need ad-hoc reports. |
| [17:49:28] | <mstenta> | by associating cost with each log, you can then calculate costs based on assets associated with them, and get an idea of how much an asset actually cost you |
| [17:49:32] | <mstenta> | as well as how much money it has made you |
| [17:50:02] | <kadaan_> | Because when you think of the question, how did moving my cows this year impact profit vs last year |
| [17:50:03] | <mstenta> | of course, it means you need to be good about entering those numbers |
| [17:50:44] | <mstenta> | yes exactly... that's why defining reports ahead of time is risky... we don't know what questions people need to ask |
| [17:50:46] | <mstenta> | nor should we try |
| [17:50:58] | <mstenta> | so building Views that can be filtered in different ways i think is most useful |
| [17:51:07] | <kadaan_> | you need to be able to associate cost to time, select all your time spent moving the cow, group by year, aggregate, and ... |
| [17:51:16] | <mstenta> | yup |
| [17:51:24] | <kadaan_> | I keep thinking I will have to fall back to writing sql. |
| [17:51:31] | <mstenta> | nah, it's possible with Views |
| [17:51:47] | <mstenta> | for most things anyway |
| [17:52:57] | <mstenta> | if you have a View of all logs, with timesheet info, and calculated cost based on time, and direct log costs, and ability to filter by timestamp (aka year range) and specific assets, or groups of assets |
| [17:53:33] | <mstenta> | you can see a full list of all activities with those assets, and their costs, and calculate the total cost |
| [17:53:45] | <mstenta> | then run the same filtered report on another year or another set of assets |
| [17:54:20] | <mstenta> | but writing SQL at first can be a good way to sketch things up sometimes |
| [17:54:53] | <mstenta> | Views (the Views module, I mean) is essentially just an SQL query builder UI |
| [17:55:05] | <mstenta> | so pretty much anything that can be done in SQL can be done in Views |
| [17:55:34] | <mstenta> | in some cases a custom handler (php class for a certain field, filter, sort, etc) needs to be written - but that's not too difficult |
| [17:56:08] | <mstenta> | a good example is the "Location" column in farmOS asset lists |
| [17:56:25] | <mstenta> | that is joining in the most recent movement log in order to get the area that the asset last moved to |
| [17:56:41] | <kadaan_> | What about something like: https://github.com/handsontable/handsontable |
| [17:57:38] | <kadaan_> | I feel like the best of both worlds would be farmOS style guided data entry, validation, taxonomy, relations, etc. |
| [17:58:23] | <kadaan_> | And being able to reason about you data within an "excel" sheet. |
| [17:58:33] | <mstenta> | yea that makes sense to me |
| [17:58:38] | <kadaan_> | But, maybe views is powerful enough. |
| [17:58:47] | <kadaan_> | I really haven't tried to push it yet. |
| [17:59:04] | <mstenta> | well, it really comes down to what exactly you want to do in each instance |
| [17:59:24] | <mstenta> | farmOS data is not really stored in a simple row-by-row format like spreadsheets are |
| [17:59:30] | <mstenta> | it is lots of tables all linked together |
| [17:59:42] | <mstenta> | so what columns and rows you need really depends on what you want to do with them |
| [18:00:08] | <mstenta> | and i haven't made any of those decisions in it yet, other than basic lists... so that's all still open ended |
| [18:00:33] | <mstenta> | i definitely agree we should provide nice ways to slice and dice the data |
| [18:00:43] | <mstenta> | that's the logical next step |
| [18:05:11] | <kadaan_> | Is there a demo farm data generator that would help devs have data to work with? |
| [18:05:21] | <kadaan_> | Or do you just use your data. |
| [18:05:30] | <mstenta> | no - that would be helpful |
| [18:07:41] | <mstenta> | i'm off for the evening - dinner with Megan's parents tonight |
| [18:07:55] | <mstenta> | it's been great talking through this stuff! looking forward to more! |
| [18:10:46] | <kadaan_> | Later |
| [18:10:51] | <kadaan_> | Have a great night |
| [18:11:01] | <kadaan_> | For a late night browse, check out https://dc-js.github.io/dc.js/ |
| [18:12:42] | <kadaan_> | Also: http://jsreport.net/blog/jsreport-10-is-here |
| [18:20:33] | <kadaan_> | farmBOT: tell mstenta Interesting, I tried what we talked about and after installing farmOS, moved profiles/farm/modules/farm to sites/all/modules/farm and then ran chown -R USERNAME sites/all/modules. Everything works until I try to install a new module. Then I get: "File Transfer failed, reason: Cannot create directory /var/www/html/sites/all/modules/votingapi" |
| [18:20:33] | <farmBOT> | kadaan_: I'll pass that on when mstenta is around. |
| [18:22:39] | <kadaan_> | farmBOT: tell mstenta I had to chown them back to 33 for the module install to work. |
| [18:22:39] | <farmBOT> | kadaan_: I'll pass that on when mstenta is around. |
| [18:24:17] | <mstenta> | ok - so that's probably because you're downloading the modules directly via Drupal? |
| [18:24:17] | <farmBOT> | mstenta: 3 min 44 sec ago <kadaan_> tell mstenta Interesting, I tried what we talked about and after installing farmOS, moved profiles/farm/modules/farm to sites/all/modules/farm and then ran chown -R USERNAME sites/all/modules. Everything works until I try to install a new module. Then I get: "File Transfer failed, reason: Cannot create directory /var/www/html/sites/all/modules/votingapi" |
| [18:24:17] | <farmBOT> | mstenta: 1 min 38 sec ago <kadaan_> tell mstenta I had to chown them back to 33 for the module install to work. |
| [18:24:29] | <mstenta> | i usually just download the tar.gz and unpack it myself |
| [18:24:37] | <kadaan_> | Ahhh. I put in the URL |
| [18:24:54] | <kadaan_> | Too bad. |
| [18:25:00] | <mstenta> | good to know that the chown breaks that though... maybe we can find a better way |
| [18:25:27] | <mstenta> | cool js graphing libraries! i'll take a closer look later! |
| [18:25:29] | <mstenta> | goodnight! |
| [18:25:32] | <kadaan_> | Hopefully. Ideally we want it to act like a regular install so that devs can just work on it through the UI if possible. |
| [18:25:35] | <kadaan_> | Night! |
| [19:10:44] | <kadaan_> | farmBOT: tell mstenta Should we add ratings as a core log feature. I can see it both ways. |
| [19:10:44] | <farmBOT> | kadaan_: I'll pass that on when mstenta is around. |
| [19:15:11] | * kadaan_ has quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| [19:17:41] | * kadaan_ has joined #farmos |
| [19:18:06] | * kadaan_ has quit (Client Quit) |
| [19:49:01] | * Kadaan has quit (Quit: Connection closed for inactivity) |