<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi Jatin<br>
    <br>
    At the moment, I think you should focus on the 25 activity test set
    and getting it working with django. I find it is much more
    productive to move from one working version to another with added
    capability. If we can arrange to host the development on a Sugar
    Labs server, it should make both the repository itself
    (download.sugarlabs.org) and the ASLO metadata directly accessible.
    <br>
    <br>
    My IRC nickname is tony37. However, I am never on #sugar (a twelve
    hour time difference so the normal participants are in bed). Last
    year, Utkarsh and I met whenever he felt the need to discuss a
    technical issue in detail. We limited the meetings to one hour. That
    proved quite productive.<br>
    <br>
    Tony<br>
    <br>
    <div class="moz-cite-prefix">On 04/13/2017 01:14 AM, Jatin Dhankhar
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAD+LdAGA+f3HxHFNe1va8+0pCaR8Hiea3GhaKv-8wBkt7XMzmQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">Hi,
        <div><br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span
            style="font-size:12.8px">I think we need to agree on the use
            of IRC. If you want to communicate with members of the
            community, you must go where they are (#sugar). If you want
            a one-to-one meeting on IRC with me, I would suggest
            #sugar-newbies. It is normally dormant but works well and
            saves a log for later review. It worked well for meetings
            with Utkarsh Tiwari during last year's GSOC.</span></blockquote>
        <div>Sure, whatever works :). What is your IRC nickname ?</div>
        <div><br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span
            style="font-size:12.8px">There are two things that you will
            need to have local to the django project. First is the
            directory </span><a moz-do-not-send="true"
            href="http://download.sugarlabs.org/" target="_blank"
            style="font-size:12.8px">download.sugarlabs.org</a><span
            style="font-size:12.8px"> which has the Sugar activity
            bundles</span></blockquote>
        <div>Do I need to mirror the whole setup/directory ?  <br>
        </div>
        <div><br>
        </div>
        <div>When talking about scraping you probably meant  <a
            moz-do-not-send="true"
            href="http://activities.sugarlabs.org"><a class="moz-txt-link-freetext" href="http://activities.sugarlabs.org">http://activities.sugarlabs.org</a></a> instead
          of <a moz-do-not-send="true"
            href="http://download.sugarlabs.org/">http://download.sugarlabs.org/</a>,
          right ? <br>
          Also for scraping, <a moz-do-not-send="true"
            href="https://scrapy.org/">Scrapy</a> seems to more popular
          than beautifulsoup ?<br>
          <br>
          Also a big thanks for including Walter in the discussion :D</div>
        <div><br>
        </div>
        <div>- Jatin Dhankhar</div>
        <div> </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Wed, Apr 12, 2017 at 6:30 AM, Tony
          Anderson <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:tony_anderson@usa.net" target="_blank">tony_anderson@usa.net</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000000" bgcolor="#FFFFFF"> Hi, Jatin<br>
              <br>
              I think we need to agree on the use of IRC. If you want to
              communicate with members of the community, you must go
              where they are (#sugar). If you want a one-to-one meeting
              on IRC with me, I would suggest #sugar-newbies. It is
              normally dormant but works well and saves a log for later
              review. It worked well for meetings with Utkarsh Tiwari
              during last year's GSOC.<br>
              <br>
              There are two things that you will need to have local to
              the django project. First is the directory <a
                moz-do-not-send="true"
                href="http://download.sugarlabs.org" target="_blank">download.sugarlabs.org</a>
              which has the Sugar activity bundles. The second is the
              'metadata' in the mysql db. For scraping, I would
              recommend BeautifulSoup (bs4). The trick will be to decide
              what data we want to capture and add to the json.<br>
              <br>
              The json fields in activities.json are ones I chose for
              the minimal system. You may want to include other
              information such as the number of downloads, which
              collections (should be entered as tags in a tag-field) and
              so on. One item I have referred to as flags (I marked some
              as X but don't remember what that meant, oh well). The
              intent is to record the platforms where the activity
              works. We also should provide links to the homepage,
              repository page, and update page (whatever that is). I
              think if you have a working scrape tool, the data it
              collects can be expanded as needed (assuming the tool runs
              in a reasonable time).<br>
              <br>
              Naturally, it would be easier if you have access to the db
              directly.<span class="HOEnZb"><font color="#888888"><br>
                  <br>
                  Tony</font></span>
              <div>
                <div class="h5"><br>
                  <br>
                  <div class="m_-7011079753232270224moz-cite-prefix">On
                    04/12/2017 01:40 AM, Jatin Dhankhar wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="ltr">
                      <blockquote class="gmail_quote" style="margin:0px
                        0px 0px 0.8ex;border-left:1px solid
                        rgb(204,204,204);padding-left:1ex"><span
                          style="font-size:12.8px">One thing you could
                          look at. On activities.sugarlabs,org, can you
                          determine from Remora where the metadata is
                          stored? I assume a db. Currently I am thinking
                          to use BeautifulSoup to scrape the site to get
                          that data, but it would be much easier to
                          access the data directly.</span></blockquote>
                      As per wiki <a moz-do-not-send="true"
href="https://wiki.mozilla.org/Update:Remora_Server_Requirements#SVN.2C_DB_and_app_config"
                        target="_blank">https://wiki.mozilla.org/<wbr>Update:Remora_Server_<wbr>Requirements#SVN.2C_DB_and_<wbr>app_config</a> data

                      is stored in mysql database. I don't have access
                      to the production server where ASLO is currently
                      running, following file <a moz-do-not-send="true"
href="https://github.com/sugarlabs/aslo/blob/master/aslo/db-update.sh#L9"
                        target="_blank">https://github.com/<wbr>sugarlabs/aslo/blob/master/<wbr>aslo/db-update.sh#L9</a> confirms

                      that data is stored in a mysql db. However it
                      would be interesting and fun to scrape the data
                      from live site. I would do that.<br>
                      <div><br>
                      </div>
                      <div>Thanks will poke around the code, looks to me
                        it's a django app and I have to mount it on my
                        django project, thanks :)</div>
                      <div><br>
                      </div>
                      <blockquote class="gmail_quote" style="margin:0px
                        0px 0px 0.8ex;border-left:1px solid
                        rgb(204,204,204);padding-left:1ex"><span
                          style="font-size:12.8px">If you are talking
                          about IRC as a place to meet Sugar community
                          members, use the freenode #sugar. This is
                          probably most active from 8-17 EST (UTC-5). I
                          am currently in the Philippines which is UTC+
                          7. </span></blockquote>
                      <div><br>
                      </div>
                      <div> Yes, tried that.  <a moz-do-not-send="true"
                          href="https://gitter.im" target="_blank">https://gitter.im</a> fits
                        in naturally with Github (really sorry for
                        suggesting a new mode of communication
                        everyday) 😅</div>
                      <div><br>
                      </div>
                      <div>- Jatin Dhankhar</div>
                      <div><br>
                      </div>
                    </div>
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On Tue, Apr 11, 2017 at
                        6:14 AM, Tony Anderson <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:tony_anderson@usa.net"
                            target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
                        wrote:<br>
                        <blockquote class="gmail_quote" style="margin:0
                          0 0 .8ex;border-left:1px #ccc
                          solid;padding-left:1ex">
                          <div text="#000000" bgcolor="#FFFFFF"> If you
                            are talking about IRC as a place to meet
                            Sugar community members, use the freenode
                            #sugar. This is probably most active from
                            8-17 EST (UTC-5). I am currently in the
                            Philippines which is UTC+ 7. <br>
                            <br>
                            Localization of Python activities is done by
                            Pootle, when implemented by the developer.
                            The developer does something like the
                            following:<br>
                                    <br>
                                    from gettext import gettext as _<br>
                            <br>
                                    self.copy.set_tooltip(_('Copy'<wbr>))<br>
                            <br>
                            In this way, all text displayed is taken
                            from a po file based on the locale (e.g.
                            en.po or hi.po). This is a simplification as
                            the actual file is compressed: en.mo, hi.mo.
                            These files are in the activity bundle. The
                            detail is that when a new version is
                            released, there is a master file: Paint.pot
                            from which the local language files are
                            built. This needs to be submitted to <a
                              moz-do-not-send="true"
                              href="http://translate.sugarlabs.org"
                              target="_blank">translate.sugarlabs.org</a>
                            which maintains a copy. However, then the
                            localized version needs to be added back to
                            the bundle. However, the localizations can
                            take months for 100 languages so how
                            synchronize the po directory with the
                            activity release is difficult. <br>
                            <br>
                            The sugar3 vs sugar issue is decided. The
                            community wants to move to sugar3 (gtk3).
                            The problem is that less that 20% of the
                            activities have been converted.<br>
                            The ones that have been converted are low
                            hanging fruit. The unconverted ones may
                            require intensive work (gimp which developed
                            gtk originally has not made the conversion).
                            <br>
                            <br>
                            One thing you could look at. On
                            activities.sugarlabs,org, can you determine
                            from Remora where the metadata is stored? I
                            assume a db. Currently I am thinking to use
                            BeautifulSoup to scrape the site to get that
                            data, but it would be much easier to access
                            the data directly.<br>
                            <br>
                            Yesterday afternoon, the ISP restored
                            service. Last time it died after two days,
                            but I am keeping my fingers crossed. I am
                            attaching the django stuff.<span
                              class="m_-7011079753232270224HOEnZb"><font
                                color="#888888"><br>
                                <br>
                                Tony</font></span>
                            <div>
                              <div class="m_-7011079753232270224h5"><br>
                                <br>
                                <div
                                  class="m_-7011079753232270224m_5089198513458135942moz-cite-prefix">On

                                  04/11/2017 01:36 AM, Jatin Dhankhar
                                  wrote:<br>
                                </div>
                                <blockquote type="cite">
                                  <div dir="ltr">
                                    <div>Hi Tony,</div>
                                    <div> </div>
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex"><span
                                        style="font-size:12.8px">Normally,
                                        we use </span><a
                                        moz-do-not-send="true"
                                        class="m_-7011079753232270224moz-txt-link-freetext"
                                        href="http://chat.sugarlabs.org"
                                        target="_blank"><a class="moz-txt-link-freetext" href="http://chat.sugarlabs.org">http://chat.sugarlabs.org</a></a><span
                                        style="font-size:12.8px"> <wbr>or
                                        on freenode: sugar-meeting or
                                        sugar-newbies. These are logged
                                        sites so that there is a record.
                                        The second is more appropriate
                                        since sugar-meeting is used for
                                        SLOB meetings and the like. The
                                        real problem with IRC is time
                                        zones. Email has the advantage
                                        that either party can send or
                                        receive at any time. Last year
                                        with a GSOC mentee we used
                                        sugar-newbies by arranging a
                                        specific meeting time in
                                        advance. </span></blockquote>
                                    <div>Yes, that is correct, main
                                      issue in communication barrier is
                                      due to timezone issues. Since most
                                      of the people are familiar and are
                                      available on IRC, it's seems to be
                                      the primary channel of
                                      communication along with mailing
                                      lists and email. But since you
                                      said we can use anything else,
                                      giving Slack a try won't hurt (if
                                      issue is about not using closed
                                      source software then IRC is fine,
                                      or we can try <a
                                        moz-do-not-send="true"
                                        href="https://about.mattermost.com/"
                                        target="_blank">Mattermost</a>).</div>
                                    <div><br>
                                    </div>
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex"><span
                                        style="font-size:12.8px"> Another
                                        part of the process is how to
                                        update '</span><a
                                        moz-do-not-send="true"
                                        href="http://translate.sugarlabs.org/"
                                        style="font-size:12.8px"
                                        target="_blank">translate.sugarlabs.org</a><span
                                        style="font-size:12.8px">' with
                                        the corresponding POT file to
                                        enable localization. We can get
                                        help from Chris Leonard on
                                        this. </span></blockquote>
                                    <div><br>
                                    </div>
                                    <div>I am not aware on how
                                      localization works. Do we need to
                                      download relevant files and bundle
                                      them with the acitvity before
                                      making it available on ASLO ? </div>
                                    <div><br>
                                    </div>
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex"><span
                                        style="font-size:12.8px">I have
                                        my Django version available -
                                        but the internet problems here
                                        are still unresolved. The
                                        technician is supposed to make
                                        another visit today to see what
                                        is wrong with our connection.
                                        Let me know if and when you
                                        think this will be useful to
                                        you.</span></blockquote>
                                    <div>Let me know when your
                                      connection is stable and I would
                                      start.</div>
                                    <div> What  are the things you need
                                      me to do in the meantime ? </div>
                                    <div><br style="font-size:12.8px">
                                      <blockquote class="gmail_quote"
                                        style="margin:0px 0px 0px
                                        0.8ex;border-left:1px solid
                                        rgb(204,204,204);padding-left:1ex"><span
                                          style="font-size:12.8px">One
                                          open issue is sugar3 vs sugar.
                                          Currently two versions of
                                          Sugar are released. The sugar
                                          version supports gtk while
                                          sugar3 supports gtk3.
                                          Unfortunately, gtk3 was
                                          developed to be totally
                                          incompatible with gtk. For
                                          example, incorporation of one
                                          gtk3 feature requires that all
                                          direct and indirect references
                                          to gtk be removed or the
                                          activity will throw an
                                          exception. Several of the gtk3
                                          conversions failed to meet
                                          this test and so fail. The
                                          issue is whether curated
                                          activities be limited to ones
                                          converted to gtk3. The
                                          positive is that Sugar could
                                          revert to releasing and
                                          maintaining only a single
                                          version. The downside is that
                                          100 or more activities will no
                                          longer be available.
                                          Specifically, in our
                                          implementation of ASLO, we
                                          need to show which versions of
                                          an activity work on which
                                          versions of Sugar (e.g. i86,
                                          arm, amd64, sugar or sugar3,
                                          and so on). We also need to
                                          show which ones support
                                          localization. There are many
                                          English activities and many
                                          Spanish activities that make
                                          no provision for localization.
                                          Luckily there are many that
                                          have no language component.
                                          However, for many of these,
                                          some kind of help is needed to
                                          convey the way the activity
                                          works. </span></blockquote>
                                      <div><br>
                                      </div>
                                      <div><a moz-do-not-send="true"
href="https://www.reddit.com/r/linux/comments/3e3q8n/is_there_a_technical_reason_why_gtk3_is_better/"
                                          target="_blank">Some people
                                          believe GTK3 is slightly
                                          better</a> and I think GTK3
                                        will stay but that should be
                                        asked in community and voted
                                        upon and taking in
                                        considerations cost of
                                        development and porting, only a
                                        discussion will help in this
                                        one.</div>
                                    </div>
                                    <div><br>
                                    </div>
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex"><span
                                        style="font-size:12.8px">You are
                                        wading into a deep and vast body
                                        of water!</span></blockquote>
                                    <div>As long as I have something to
                                      hold onto, I will not drown 😅 </div>
                                    <div><br>
                                    </div>
                                    <div>Thanks,</div>
                                    <div>Jatin Dhankhar</div>
                                  </div>
                                  <div class="gmail_extra"><br>
                                    <div class="gmail_quote">On Mon, Apr
                                      10, 2017 at 9:11 AM, Tony Anderson
                                      <span dir="ltr"><<a
                                          moz-do-not-send="true"
                                          class="m_-7011079753232270224moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
                                      wrote:<br>
                                      <blockquote class="gmail_quote"
                                        style="margin:0 0 0
                                        .8ex;border-left:1px #ccc
                                        solid;padding-left:1ex">
                                        <div text="#000000"
                                          bgcolor="#FFFFFF"> Hi, Jatin<br>
                                          <br>
                                          Normally, we use <a
                                            moz-do-not-send="true"
class="m_-7011079753232270224m_5089198513458135942m_2297804042014618975moz-txt-link-freetext"
href="http://chat.sugarlabs.org" target="_blank"><a class="moz-txt-link-freetext" href="http://chat.sugarlabs.org">http://chat.sugarlabs.org</a></a>
                                          or on freenode: sugar-meeting
                                          or sugar-newbies. These are
                                          logged sites so that there is
                                          a record. The second is more
                                          appropriate since
                                          sugar-meeting is used for SLOB
                                          meetings and the like. The
                                          real problem with IRC is time
                                          zones. Email has the advantage
                                          that either party can send or
                                          receive at any time. Last year
                                          with a GSOC mentee we used
                                          sugar-newbies by arranging a
                                          specific meeting time in
                                          advance. <br>
                                          <br>
                                          I haven't heard from Walter,
                                          but my preference would be to
                                          use the Sugarlabs server since
                                          the content is largely already
                                          there and it would be easier
                                          to make it the official site
                                          if that were decided. So in
                                          the short run, I think you
                                          should do whatever is best for
                                          your own development process.
                                          <br>
                                          <br>
                                          I am not sure how CI fits into
                                          this. If the activity
                                          development is done on GitHub,
                                          then the deployment model is
                                          to run setup.py to create an
                                          xo bundle and then copy that
                                          bundle to the appropriate
                                          location in the <a
                                            moz-do-not-send="true"
                                            href="http://download.sugarlabs.org"
                                            target="_blank">download.sugarlabs.org</a>
                                          tree. Assuming the update
                                          results from a PR, the
                                          deployer would need to update
                                          the activity information on
                                          ASLO appropriately. However,
                                          that process depends on where
                                          that data (metadata) is
                                          stored. Another part of the
                                          process is how to update '<a
                                            moz-do-not-send="true"
                                            href="http://translate.sugarlabs.org"
                                            target="_blank">translate.sugarlabs.org</a>'
                                          with the corresponding POT
                                          file to enable localization.
                                          We can get help from Chris
                                          Leonard on this. <br>
                                          <br>
                                          I have my Django version
                                          available - but the internet
                                          problems here are still
                                          unresolved. The technician is
                                          supposed to make another visit
                                          today to see what is wrong
                                          with our connection. Let me
                                          know if and when you think
                                          this will be useful to you.<br>
                                          <br>
                                          I have now tested most of the
                                          activities (~400). I was
                                          optimistic in the number that
                                          work out of the box. However,
                                          a part of this is running them
                                          in the Ubuntu version of Sugar
                                          (amd64). There are many
                                          activities which launch object
                                          code (mostly c) which is
                                          dependent on the architecture.
                                          I am now trying to repeat the
                                          tests on an XO-1.75. One issue
                                          on Ubuntu is that many
                                          activities assume a 1200x900
                                          screen and so on a 1024X768
                                          screen overflow. This makes
                                          some of the games unusable
                                          since part of the controls are
                                          off the screen. Because of the
                                          internet problems, the
                                          untested activities tend to be
                                          new ones since I was using my
                                          local repository which is a
                                          snapshot taken several months
                                          ago. The other group are the
                                          GCompris activities (about
                                          70). <br>
                                          <br>
                                          My intent is to build a
                                          'curated' repository of
                                          activities known to work and
                                          be usable on the XO and on
                                          Ubuntu (or such other platform
                                          that Sugar may choose to
                                          support). Most of the
                                          currently not work activities
                                          have software dependencies no
                                          longer included in the current
                                          Sugar release. So the curated
                                          library will grow as
                                          activities are repaired over
                                          time. <br>
                                          <br>
                                          One open issue is sugar3 vs
                                          sugar. Currently two versions
                                          of Sugar are released. The
                                          sugar version supports gtk
                                          while sugar3 supports gtk3.
                                          Unfortunately, gtk3 was
                                          developed to be totally
                                          incompatible with gtk. For
                                          example, incorporation of one
                                          gtk3 feature requires that all
                                          direct and indirect references
                                          to gtk be removed or the
                                          activity will throw an
                                          exception. Several of the gtk3
                                          conversions failed to meet
                                          this test and so fail. The
                                          issue is whether curated
                                          activities be limited to ones
                                          converted to gtk3. The
                                          positive is that Sugar could
                                          revert to releasing and
                                          maintaining only a single
                                          version. The downside is that
                                          100 or more activities will no
                                          longer be available.
                                          Specifically, in our
                                          implementation of ASLO, we
                                          need to show which versions of
                                          an activity work on which
                                          versions of Sugar (e.g. i86,
                                          arm, amd64, sugar or sugar3,
                                          and so on). We also need to
                                          show which ones support
                                          localization. There are many
                                          English activities and many
                                          Spanish activities that make
                                          no provision for localization.
                                          Luckily there are many that
                                          have no language component.
                                          However, for many of these,
                                          some kind of help is needed to
                                          convey the way the activity
                                          works. <br>
                                          <br>
                                          You are wading into a deep and
                                          vast body of water!<span
                                            class="m_-7011079753232270224m_5089198513458135942HOEnZb"><font
                                              color="#888888"><br>
                                              <br>
                                              Tony</font></span>
                                          <div>
                                            <div
                                              class="m_-7011079753232270224m_5089198513458135942h5"><br>
                                              <br>
                                              <div
class="m_-7011079753232270224m_5089198513458135942m_2297804042014618975moz-cite-prefix">On


                                                04/10/2017 12:00 AM,
                                                Jatin Dhankhar wrote:<br>
                                              </div>
                                              <blockquote type="cite">
                                                <div dir="ltr">Hi,
                                                  <div>Sorry for the
                                                    delay. I went
                                                    through the polls
                                                    tutorials and I
                                                    think I am getting
                                                    hang of Django. I
                                                    have one query that
                                                    is out of context,
                                                    what is your IRC
                                                    setup ? IRC doesn't
                                                    allow message to be
                                                    delivered or stored
                                                    once either party is
                                                    offline, people
                                                    login through a
                                                    external server for
                                                    IRC's to maintain
                                                    their availability
                                                    in a channel. May I
                                                    suggest something
                                                    like Slack or Flock
                                                    for communication.
                                                    IRC is good for
                                                    quick and fast
                                                    connection but Slack
                                                    and alternatives
                                                    allow easy
                                                    communication. (Just
                                                    a suggestion,
                                                    though)</div>
                                                  <div><br>
                                                  </div>
                                                  <div>Should I  deploy
                                                    the same polls app
                                                    on DigitalOcean
                                                    along with CI
                                                    pipeline and
                                                    branching model in
                                                    the meantime with
                                                    code hosted on
                                                    Github ?</div>
                                                  <div><br>
                                                  </div>
                                                  <div>Thanks,</div>
                                                  <div>Jatin Dhankhar</div>
                                                </div>
                                                <div class="gmail_extra"><br>
                                                  <div
                                                    class="gmail_quote">On
                                                    Sat, Apr 8, 2017 at
                                                    6:28 AM, Tony
                                                    Anderson <span
                                                      dir="ltr"><<a
                                                        moz-do-not-send="true"
class="m_-7011079753232270224moz-txt-link-abbreviated"
                                                        href="mailto:tony_anderson@usa.net"
                                                        target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
                                                    wrote:<br>
                                                    <blockquote
                                                      class="gmail_quote"
                                                      style="margin:0 0
                                                      0
                                                      .8ex;border-left:1px
                                                      #ccc
                                                      solid;padding-left:1ex">
                                                      <div
                                                        text="#000000"
                                                        bgcolor="#FFFFFF">
                                                        Hi, Jatin<br>
                                                        <br>
                                                        I abbreviated
                                                        this thread
                                                        because I am
                                                        getting
                                                        complaints from
                                                        the list that
                                                        the emails are
                                                        too long.<br>
                                                        <br>
                                                        Yesterday, I was
                                                        able to complete
                                                        a set of 25
                                                        activities to
                                                        use as a test
                                                        base. The Django
                                                        app now has two
                                                        views. First is
                                                        a display of all
                                                        of the <br>
                                                        activities with
                                                        the icon and
                                                        name. A link for
                                                        each opens the
                                                        full activity
                                                        page. The data
                                                        for the views is
                                                        in a file which
                                                        is a list of
                                                        jsons, one json
                                                        per line. <br>
                                                        The  views.py
                                                        reads this file
                                                        and builds the
                                                        view from the
                                                        jsons. <br>
                                                        <br>
                                                        So the app
                                                        consists of:<br>
                                                            urls.py<br>
                                                            views.py<br>
                                                            templates/<br>
                                                               
                                                        base.html<br>
                                                               
                                                        list.html<br>
                                                               
                                                        activity.html<br>
                                                        <br>
                                                        with the data:<br>
                                                               
                                                        fixtures/activities.json
                                                        <br>
                                                                icons/<br>
                                                                xo/<br>
                                                        <br>
                                                        The icons
                                                        directory has
                                                        the activity
                                                        icons (*.svg)<br>
                                                        The xo directory
                                                        has the activity
                                                        bundles (*.xo)<br>
                                                        <br>
                                                        Meanwhile, I am
                                                        having more
                                                        troubles with
                                                        the ISP (a new
                                                        one). When that
                                                        gets resolved, I
                                                        should be able
                                                        to send the
                                                        above to you.<br>
                                                        <br>
                                                        I have also
                                                        mentioned our
                                                        dialog to Walter
                                                        Bender
                                                        suggesting that
                                                        you could set up
                                                        your working
                                                        model as <a
                                                          moz-do-not-send="true"
href="http://activities3.sugarlabs.org" target="_blank">activities3.sugarlabs.org</a>.
                                                        This would give
                                                        you a permanent
                                                        place to do the
                                                        development and
                                                        make your
                                                        project visible
                                                        to the community
                                                        so that we can
                                                        obtain feedback.
                                                        I aslo suggested
                                                        that the project
                                                        repository could
                                                        be placed on
                                                        GitHub so that
                                                        again the
                                                        community can
                                                        comment and
                                                        potentially
                                                        contribute.<span
class="m_-7011079753232270224m_5089198513458135942m_2297804042014618975HOEnZb"><font
color="#888888"><br>
                                                          <br>
                                                          Tony</font></span><span><br>
                                                          <div
class="m_-7011079753232270224m_5089198513458135942m_2297804042014618975m_-2022019510050925157moz-cite-prefix">On



                                                          04/07/2017
                                                          12:23 AM,
                                                          Jatin Dhankhar
                                                          wrote:<br>
                                                          </div>
                                                          <blockquote
                                                          type="cite">
                                                          <div dir="ltr">Hi,

                                                          <div><br>
                                                          </div>
                                                          <div>I am
                                                          setting up
                                                          Django now and
                                                          going through
                                                          some
                                                          tutorials. I
                                                          will setup the
                                                          code with a
                                                          very basic and
                                                          barebones
                                                          version of
                                                          what we want
                                                          to achieve and
                                                          put it in a
                                                          private repo.
                                                          We can even
                                                          host it
                                                          online, since
                                                          I have some
                                                          DigitalOcean
                                                          credit left.
                                                          Will keep you
                                                          posted. </div>
                                                          <div><br>
                                                          </div>
                                                          <div>Thanks.</div>
                                                          <div>Jatin
                                                          Dhankhar</div>
                                                          </div>
                                                          <div
                                                          class="gmail_extra"><br>
                                                          <div
                                                          class="gmail_quote">On

                                                          Thu, Apr 6,
                                                          2017 at 7:11
                                                          AM, Tony
                                                          Anderson <span
                                                          dir="ltr"><<a
moz-do-not-send="true"
                                                          class="m_-7011079753232270224moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
                                                          wrote:<br>
                                                          <blockquote
                                                          class="gmail_quote"
                                                          style="margin:0
                                                          0 0
                                                          .8ex;border-left:1px
                                                          #ccc
                                                          solid;padding-left:1ex">
                                                          <div
                                                          text="#000000"
bgcolor="#FFFFFF"> Hi, Jatin<br>
                                                          <br>
                                                          In setting up
                                                          Django, I
                                                          think you will
                                                          do it on your
                                                          computer not
                                                          on a separate
                                                          server. Django
                                                          handles that
                                                          through its
                                                          own server and
                                                          has sgqlite as
                                                          a database
                                                          built-in. A
                                                          good first
                                                          start would be
                                                          to set up the
                                                          tutorial app (<a
moz-do-not-send="true"
                                                          class="m_-7011079753232270224moz-txt-link-freetext"
href="https://www.djangoproject.com" target="_blank"><a class="moz-txt-link-freetext" href="https://www.djangoproject.com">https://www.djangoproject.com</a></a><wbr>/).





                                                          Essentially
                                                          you will need
                                                          to install
                                                          django and
                                                          then set up
                                                          the tutorial
                                                          app 'poll'.
                                                          Working
                                                          through this
                                                          tutorial will
                                                          help a lot
                                                          later on. The
                                                          key point is
                                                          that after
                                                          initial setup,
                                                          there are
                                                          three
                                                          important
                                                          elements:
                                                          url.py which
                                                          defines the
                                                          urls to access
                                                          the
                                                          application,
                                                          views.py which
                                                          is the python
                                                          code that
                                                          responds to a
                                                          request by
                                                          accessing the
                                                          db and
                                                          delivering the
                                                          relevant
                                                          information to
                                                          a template.
                                                          The template
                                                          is an html
                                                          file with
                                                          variables of
                                                          the form {{ <a
moz-do-not-send="true" href="http://activity.name" target="_blank">activity.name</a>
                                                          }}
                                                          transferring
                                                          information
                                                          from the view
                                                          to the
                                                          template.<br>
                                                          <br>
                                                          What I have is
                                                          an
                                                          application:
                                                          aslo. Once you
                                                          have Django
                                                          installed and
                                                          have run the
                                                          tutorial app
                                                          through
                                                          Django's
                                                          server, you'll
                                                          be ready.
                                                          Essentially,
                                                          you will only
                                                          need to add
                                                          aslo as a
                                                          second app in
                                                          the settings.
                                                          One possible
                                                          confusion is
                                                          that DJango
                                                          lives in a
                                                          project -
                                                          essentially a
                                                          directory
                                                          containing its
                                                          manage.py
                                                          admin
                                                          interface. In
                                                          the directory
                                                          is another
                                                          directory of
                                                          the same name
                                                          with the
                                                          settings.py
                                                          and url.py.
                                                          The poll app
                                                          is a directory
                                                          in the
                                                          top-level
                                                          alongside the
                                                          inner
                                                          directory with
                                                          the project
                                                          name.<br>
                                                          <br>
                                                          For example,
                                                          my project is
                                                          schoolsite. So
                                                          my setup looks
                                                          like:<br>
                                                          <br>
/library/schoolsite/schoolsite<br>
/library/schoolsite/aslo<br>
                                                          <br>
                                                          Meanwhile my
                                                          code links
                                                          directly to an
                                                          activity page
                                                          with no index.
                                                          I'll add an
                                                          index so the
                                                          essential
                                                          structure will
                                                          be there. I'll
                                                          also include
                                                          the 'fixtures'
                                                          to set up a 25
                                                          activity
                                                          capability.
                                                          Fixtures are
                                                          csv files from
                                                          which the
                                                          database
                                                          (metadata) can
                                                          be loaded. <br>
                                                          <span
class="m_-7011079753232270224m_5089198513458135942m_2297804042014618975m_-2022019510050925157HOEnZb"><font
color="#888888"> <br>
                                                          Tony</font></span></div>
                                                          </blockquote>
                                                          </div>
                                                          </div>
                                                          </blockquote>
                                                          <br>
                                                        </span></div>
                                                    </blockquote>
                                                  </div>
                                                  <br>
                                                </div>
                                              </blockquote>
                                              <br>
                                            </div>
                                          </div>
                                        </div>
                                      </blockquote>
                                    </div>
                                    <br>
                                  </div>
                                </blockquote>
                                <br>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                      </div>
                      <br>
                    </div>
                  </blockquote>
                  <br>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>