*** lelkneralfaro has joined #novawebdev | 09:50 | |
*** jelkner has joined #novawebdev | 10:14 | |
*** hrodriguez has joined #novawebdev | 10:20 | |
*** zOnny has joined #novawebdev | 10:20 | |
*** DiegoG has joined #novawebdev | 10:34 | |
*** replaceafill has joined #novawebdev | 11:07 | |
*** mr_german has joined #novawebdev | 12:01 | |
jelkner | replaceafill, are you here? | 13:10 |
---|---|---|
replaceafill | jelkner, yes | 13:10 |
*** nathan has joined #novawebdev | 13:10 | |
jelkner | we finish nathan's internship in 50 minutes | 13:11 |
jelkner | can replaceafill, mjsir911, and nathan use that time to discuss "handing off" his work to mjsir911? | 13:11 |
jelkner | so that replaceafill is aware of what is going on? | 13:11 |
jelkner | i don't recall if i wrote issues around this yet | 13:12 |
jelkner | i can check now | 13:12 |
jelkner | we will want to create web apps for our customers so they can get work done easily using their phones | 13:12 |
jelkner | the more i watch how folks interact with the web these days, the more clear that is to me | 13:13 |
jelkner | i've confirmed this with many aea activists | 13:13 |
jelkner | so, mjsir911, what do we need to make this happen? | 13:13 |
mjsir911 | I think the hardest part is going to be creating a *good* api on whatever backend we are using, which I think is tendenci | 13:14 |
jelkner | it *is* tendenci, mjsir911 | 13:15 |
jelkner | and the fact that you say "i think" is why we need this conversation | 13:15 |
jelkner | replaceafill, thoughts? | 13:17 |
replaceafill | http://irclogs.novawebdevelopment.org/2018-06-24.log.html#t14:24:39 | 13:17 |
mjsir911 | yep, extending tendenci is the biggest part of it | 13:18 |
jelkner | replaceafill, is it still true that you don't get "web app"? | 13:19 |
jelkner | https://en.wikipedia.org/wiki/Web_application | 13:19 |
replaceafill | jelkner, no, that part i'm clear now | 13:19 |
jelkner | cool | 13:19 |
jelkner | so what do we need to get replaceafill and mjsir911 collaborating on this? | 13:20 |
mjsir911 | replaceafill: I would like to work with you when doing this to come up with a reasonable API to send push notifications. You are going to be using much more than I am | 13:20 |
jelkner | with mjsir911 on the front end and replaceafill on the backend? | 13:20 |
replaceafill | mjsir911, could you design such API? | 13:20 |
mjsir911 | I could try, haven't had much experience with doing anything like that for others to use | 13:21 |
jelkner | are you willing to give it a go, mjsir911? | 13:21 |
replaceafill | mjsir911, so you're thinking of handling this as a "generic kind of thing"? | 13:21 |
mjsir911 | It will be fairly trivial to set up the front-end to listen to connections from the server for different kind of push notifications, the problem is making good python code to send push notifications | 13:22 |
replaceafill | mjsir911, could you explain the "push notifications" part, i don't think i get that | 13:22 |
replaceafill | mjsir911, are we talking rest APIs to begin with? | 13:23 |
mjsir911 | Jeff wants the phone to notify the user with a native notification on *an event* | 13:23 |
mjsir911 | wether it be voting, a meeting, whatever | 13:23 |
replaceafill | mjsir911, from a technical point of view, what would tendenci need to do? | 13:24 |
replaceafill | mjsir911, i mean, it'd be something like "send email" | 13:24 |
mjsir911 | I'm not exactly sure the protocol this is being done on above HTTP. Websockets / long-polling / whatever else | 13:24 |
mjsir911 | it would be HTTP | 13:24 |
jelkner | +1 | 13:24 |
replaceafill | mjsir911, sure, but you're not clear on how exactly yet? | 13:25 |
mjsir911 | No all nathan has done has been purely client-side, setting up a timer to send a notification in a minute, etc | 13:25 |
jelkner | the web app on their mobile device would receive the information from the web server by connecting with http | 13:25 |
mjsir911 | he doesn't have much backend experience and so I've avoided going down that path with him | 13:26 |
replaceafill | mjsir911, is this something like socket.io what we need here? | 13:26 |
replaceafill | mjsir911, that's the closest i've been to that kind of "notification" architecture | 13:27 |
mjsir911 | perhaps, looks similar, although socket.io is probably built on the push notification tech | 13:27 |
mjsir911 | or rather socket.io is the protocol some push notification services might use | 13:27 |
mr_german | replaceafill, I was testing the blog and, it seems to work fine | 13:28 |
replaceafill | mr_german, cool, let's talk about it later | 13:28 |
jelkner | https://developers.google.com/web/fundamentals/codelabs/push-notifications/ | 13:28 |
jelkner | https://www.sitepoint.com/how-to-use-push-notifications-for-web-applications/ | 13:29 |
replaceafill | mjsir911, have you investigated django's side of doing what you need to? | 13:29 |
replaceafill | mjsir911, i mean, if there are django apps available to do this? | 13:29 |
mjsir911 | I have not, haven't looked much at the backend | 13:29 |
mjsir911 | thats a good idea to do before writing any code | 13:30 |
replaceafill | mjsir911, +1 | 13:30 |
replaceafill | mjsir911, my only issue is that i don't know what to look for :) | 13:30 |
replaceafill | https://channels.readthedocs.io/en/latest/ maybe? | 13:31 |
mjsir911 | some keywords are: `progressive web app`, `push notification` | 13:31 |
mjsir911 | Yeah that will probably be useful | 13:31 |
replaceafill | i've read some stuff about channels but never used them | 13:31 |
mjsir911 | I haven't spent much time looking into the django side of things, but what I really need from you is making a generic way to do it throughout tendenci | 13:31 |
mjsir911 | or helios | 13:31 |
replaceafill | mjsir911, have you done this before with any other backend technology? | 13:33 |
mjsir911 | nope | 13:33 |
replaceafill | ok | 13:33 |
replaceafill | so we're all in uncharted territory it seems :) | 13:33 |
mjsir911 | indeed | 13:33 |
replaceafill | cool, helps keep expectations low ;) | 13:34 |
replaceafill | and deal with inestability | 13:34 |
mjsir911 | yeah it will be easier to gauge whats going on once started | 13:34 |
jelkner | but this is where we need to go, replaceafill and mjsir911 | 13:35 |
jelkner | i understand it may take awhile to get there | 13:35 |
jelkner | but i'm convinced our success in part depends on it | 13:35 |
jelkner | so down the rabbit whole we should go | 13:35 |
replaceafill | jelkner, mjsir911 there's something i don't quite understand | 13:35 |
replaceafill | jelkner, mjsir911 about the "utility?"/usefulness (whatever is the right word) of the web app | 13:36 |
replaceafill | jelkner, mjsir911 couldn't the website really do the same? | 13:36 |
mjsir911 | Correct, they are somewhat seperate things | 13:36 |
replaceafill | mjsir911, could you explain please? | 13:36 |
mjsir911 | notifications would work on a normal website, but notifications being sent while the phone is turned off / the web page is closed will not work | 13:36 |
replaceafill | so the weapp is independent in that regard | 13:37 |
mjsir911 | when transitioning to a progressive web app, push notifications would act much more similar to how any other native app would work | 13:37 |
mjsir911 | allowing notifications while the phone is turned off or another app is opened | 13:37 |
replaceafill | mjsir911, have you heard of the meteor (js) framework? | 13:38 |
mjsir911 | No, but from a quick look looks like react native? | 13:39 |
replaceafill | mjsir911, yes, kind of | 13:39 |
replaceafill | subscriptions to changes | 13:39 |
replaceafill | this is really old but relies on django native signals: https://github.com/jazzband/django-ddp#overview-and-getting-started | 13:40 |
replaceafill | mjsir911, i wonder if that's similar to the architecture we need for this | 13:40 |
mjsir911 | How is meteor's front end? is there an actual .apk or whatever to put on the phone? | 13:41 |
replaceafill | mjsir911, it's js single page apps | 13:41 |
mjsir911 | k so just ships in a browser | 13:41 |
replaceafill | mjsir911, you need the browser | 13:41 |
replaceafill | mjsir911, yes | 13:41 |
mjsir911 | Yea basically what I'm being asked to do is a very minimal version of what meteor does with the subscriptions for notifications | 13:42 |
replaceafill | got it | 13:42 |
replaceafill | so let me try to sum up our situation (sorry for the ignorance in terms) | 13:42 |
replaceafill | we know how to write web apps | 13:43 |
replaceafill | but never have done any with backend "subcribe to changes" interaction | 13:43 |
replaceafill | i think i need to go through this doc jelkner linked: https://developers.google.com/web/fundamentals/codelabs/push-notifications/ | 13:44 |
mjsir911 | Yeah, but specifically in regards to 'subscribe to changes' for notifications while the phone is in various states | 13:44 |
mjsir911 | that tutorial is using a google server as the subscription manager I believe | 13:45 |
replaceafill | jelkner, when do you plan we work on this? | 13:45 |
mjsir911 | (he's currently afk) | 13:45 |
replaceafill | ah ok | 13:45 |
jelkner | replaceafill, mjsir911 before getting to a timeline, can i ask a few questions? | 13:46 |
jelkner | in the first place, there are two stories here | 13:47 |
jelkner | and we don't need both at once | 13:47 |
jelkner | the first story goes like this: | 13:47 |
jelkner | i have an icon on my mobile device with ora (or novalaciro or aea) on it | 13:48 |
jelkner | when i click on that, it takes me to the appropriate website and logs me in | 13:48 |
jelkner | .... | 13:48 |
jelkner | that story doesn't involve any asynchronous stuff | 13:48 |
jelkner | no push notifications required | 13:48 |
jelkner | that would be the "easy" story, yes? | 13:49 |
mjsir911 | yes that would be, that's just progressive web app stuff which is basically a single `manifest.json` file | 13:49 |
jelkner | so let's do that first | 13:50 |
jelkner | since that is by far the more important of the two in any case | 13:50 |
jelkner | web notifications will be nice | 13:50 |
jelkner | but what is a show stopper now is that folks can't easily use our app from their phone | 13:50 |
jelkner | replaceafill, sound reasonable? | 13:51 |
mjsir911 | I think the largest part of that would just be teaching replaceafill & co how to do it | 13:51 |
mjsir911 | documenting how to do it | 13:51 |
jelkner | replaceafill, are you here? | 13:51 |
replaceafill | mjsir911, what's required from the backend to do that? | 13:52 |
replaceafill | mjsir911, in the past when i had this conversation with jelkner, this is what i got in my notes: https://django-sesame.readthedocs.io/en/latest/ | 13:52 |
mjsir911 | absolutely nothing, one line in the index.html and a new manifest.json file | 13:52 |
jelkner | sweet! | 13:52 |
jelkner | so mjsir911 what is your timeline? | 13:52 |
jelkner | i'm thinking we need to dogfood this first | 13:52 |
jelkner | so the first web app will be for novawebdevelopment itself | 13:53 |
mjsir911 | Sounds good, I'll try writing up documentation this weekend and send it out to replaceafill sunday? | 13:53 |
jelkner | +1 | 13:53 |
replaceafill | mjsir911, do you have a few links to share now? | 13:54 |
replaceafill | mjsir911, i mean, tutorial or someone doing the same kind of stuff | 13:54 |
replaceafill | mjsir911, it's ok if you don't have them at the top of your head, i can wait | 13:54 |
jelkner | cool, let's talk on monday around 12 noon | 13:54 |
mjsir911 | https://developers.google.com/web/fundamentals/web-app-manifest/ | 13:54 |
jelkner | great | 13:54 |
replaceafill | mjsir911, thanks | 13:55 |
jelkner | we are now taking the interns out for sushi | 13:55 |
jelkner | they've done great work this past month | 13:55 |
replaceafill | cool | 13:55 |
replaceafill | have fun | 13:55 |
jelkner | and we want to celebrate | 13:55 |
jelkner | thanks | 13:55 |
jelkner | talk to you on monday replaceafill and mjsir911 | 13:55 |
replaceafill | later guys o/ | 13:55 |
jelkner | ACTION signs off | 13:56 |
mjsir911 | cya | 13:56 |
replaceafill | mr_german, still around? | 13:56 |
*** replaceafill has joined #novawebdev | 14:15 | |
*** replaceafill has joined #novawebdev | 14:15 | |
*** replaceafill has joined #novawebdev | 14:53 | |
*** mr_german has joined #novawebdev | 16:26 | |
*** mjsir911 has joined #novawebdev | 16:39 | |
*** mjsir911_ has joined #novawebdev | 16:41 | |
*** mjsir911 has joined #novawebdev | 19:24 | |
*** mjsir911_ has joined #novawebdev | 19:24 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!