Questions about future releases of Armstrong

170 views
Skip to first unread message

Martey Dodoo

unread,
Apr 6, 2014, 11:17:58 PM4/6/14
to armstr...@googlegroups.com
I have seen some chatter on this group and in Github issues about updating some
of Armstrong's various components. Is a new release of Armstrong itself
upcoming?

Regardless, I would love to hear more news from core devs about Armstrong's
future, including whether time-based releases might return at any point in the
future, compatibility with the latest versions of Django, and areas where it
would help for people in the community to contribute.
--
Martey Dodoo
https://marteydodoo.com

Joshua Bonnett

unread,
Apr 7, 2014, 2:56:53 PM4/7/14
to armstr...@googlegroups.com
Just speaking for myself, but time based releases seem unlikely. Jon cotton has been working through the backlog of enhancements that he has written over the last few years. I have some stuff for wells that I would like to get out into the world, including some hatband updates. Overall, we have a bunch of layout and images stuff here at CIR that needs to be packaged and released. I doubt any of that will lead to Armstrong as a whole getting a new revision. If you have ideas for features or bugfixes that would make up a armstrong 2.0, I would love to hear them. 




--
You received this message because you are subscribed to the Google Groups "Armstrong News Platform" group.
To unsubscribe from this group and stop receiving emails from it, send an email to armstrongcms...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Jon Cotton

unread,
Apr 7, 2014, 6:26:17 PM4/7/14
to armstr...@googlegroups.com

Hi Martey,

So nice to hear some interest! I know you've been involved for a long while so cheers to you staying tuned in. There won't be a new bundled release of Armstrong anytime soon. It's sad but true.

I launched a new component last week (list announcement forthcoming), released a massive update to ArmDev and have nearly-ready updates to ArmSections and ArmLayout. Ultimately a new Armstrong release depends on an updated ArmContent and that package needs a lot of work. Honorary mention goes to AppsImages, which was never truly completed, but we can continue to gloss over it.

The "new" Armstrong release is sort of summed up here:
https://github.com/armstrong/armstrong/pull/93

The necessary work on ArmContent is here:
https://github.com/armstrong/armstrong.core.arm_content/pull/32

My goal is Django 1.3-1.7 support for Python 2.6 and 2.7. ArmDev 2.0 begins our embrace of Setuptools which will make Python 3 support much, much easier. That'll come in steps with packages like ArmSections and ArmLayout being easy and ArmContent, the behemoth, much harder to port.

The work required on each component in general follows this pattern in decreasing order of time cost:
1. supporting new Djangos is the largest task
2. expanding test coverage (kind of hand-in-hand with #1)
3. refactor to use ArmDev 2.0 and Setuptools
4. new features

What is really necessary to continue? Developer time and project management. Dedicated time is gone since the Knight grant ended. All but two original developers have left their organizations. The spark that fueled the project is gone. It's up to the community. We'll get developer time as it comes, so really how should we communicate? Github is the most active but centered around code discussion. I personally use an Evernote todo list. Joshua and I have an anemic Trello board. I think this mailing list is the proper central community hub. I wasn't able to post for a while so someone would need to gain moderdation ability to make this a more welcoming place.

I want to avoid as much overhead as possible. As proven, we can't maintain it. docs.armstrongcms.org is a good example. One of my major efforts on the components I've been touching is updating the Readmes to contain all the documentation so we can keep everything self-contained. I've also added a `changes.rst` because changelogs are important.

Happy to hear your ideas!

-Jon Cotton

Chris Chang

unread,
Apr 7, 2014, 8:55:53 PM4/7/14
to armstr...@googlegroups.com
If anyone is going to PyCon, I'd love to meet up.

-chris


--

Brian Wheeler

unread,
Apr 8, 2014, 10:43:04 AM4/8/14
to armstr...@googlegroups.com

Just want to mention that hyperlocal Charlottesville Tomorrow is also still running Armstrong at www.cvilletomorrow.org

 

I could use some guidance…  we have a local team maintaining the site (I am not a programmer) and we want to pursue a number of enhancements this year.

 

Should we:

1) Just do our own thing at this point given the small user base?

2) Try and get caught up with recent Armstrong releases (I’d have to pay the developers to put the time into this)?

3) Get caught up and then share here what our plans are so that all can potentially benefit?

 

As a tiny non-profit with little funding for enhancements, I want to make sure we are taking the most strategic approach.  If there is a user base that would benefit from our contributions to the open source platform, I probably need to be nudged to go that direction.  If there has been a lot of new development that we would benefit from and I would be a fool not to leverage the contributions made over the past year, tell me that too!

 

Brian Wheeler

 

 

Brian Wheeler, Executive Director
Charlottesville Tomorrow
P.O. Box 1591
Charlottesville, VA 22902
bwhe...@cvilletomorrow.org
tel: 434-260-1533
www.cvilletomorrow.org

www.cvillepedia.org

Description: Facebook-IconDescription: Twitter-IconDescription: google_plus_logo

--

image001.png
image002.png
image003.jpg

Joshua Bonnett

unread,
Apr 8, 2014, 5:22:46 PM4/8/14
to armstr...@googlegroups.com
If your running on a version of django that is still supported by the django project, I would just make sure that is up to date for security reasons and hold tight. If your not running on a supported version of django, then I would recommend hiring a dev to do that for you. It should be quick and relatively painless, depending on what 3rd party libraries your site is using. 

Jon Cotton

unread,
Apr 9, 2014, 1:41:32 PM4/9/14
to armstr...@googlegroups.com
Hi Brian,

I'll lead with the wavy response—it depends on what enhancements you want to make. If it comes to customizing portions of what Armstrong provides, then yes, we are very interested in your thoughts and potential code contributions. One of us could perhaps do some of the coding; you aren't necessarily on your own paying developers if it's something we could easily fold in.

Assuming you are on an official release of Armstrong/1.x Armstrong component versions, any update will be easy. With the exception of `related_content` in its 2.x version, no backward compatibility has been broken. There is no recent full Armstrong release, but there are newer component releases available. Updating those will be easy.

I'm guessing you have enhancements in mind outside the scope of what Armstrong provides. I agree with Joshua, you should consider updating to the newest Django security release (i.e. 1.5.1 -> 1.5.5). Sadly the full Armstrong does not support the newest Django versions. (It will dammit one day...but it's essentially volunteer effort at this point.)

If you are happy with your current data model—the structure of content, articles, sections, etc—then everything else is iteration and updating Armstrong components makes sense. Assess the effort necessary for your enhancements and let us know where Armstrong might be able to help.

Keep us posted!
-Jon Cotton

Brian Wheeler

unread,
Apr 9, 2014, 2:09:28 PM4/9/14
to armstr...@googlegroups.com

Jon - Thanks for the additional feedback.  I’ll describe these enhancements from my end-user perspective and then maybe you can tell me where to go next.

 

1) Mobile – We want to take our mobile friendly Armstrong site and make it mobile-optimized (basically like Texas Tribune).

2) Geo tagged content – We want to leverage the connections we have already made with the PLACE module to our news (i.e. geo-tagged content) such that we can present mobile users with “news near you.”  We want to incorporate our MediaWiki site which also has geo-tagged content such that the user experience will be they can see news, events and wiki articles integrated in a map view and even create user-defined and embeddable maps of our content.

3) Login functionality to support preferences on such items as favorite topics, geographic watch areas, and text message alerts for news content and events

 

To sum up these three items:

We envision a mobile site with a responsive design placing attention on our top news stories, “news near you” mapping of stories and wiki content, and text alerts for users with a site login based upon choice of priority topics and proximity to a location.

 

4) Integration of events data with news articles –While we have support for linking related news, documents, and multimedia to each article, our calendar events are a major missing link.  Our site needs to draw the public’s attention to the next opportunity to make their voices heard on key quality of life issues.  This enhancement will place a “related meetings” box prominently on our news stories.

 

Those are four of the big enhancements I have in mind and for which we are seeking grant funding.  I’d be happy to put my development team in contact with anyone else who could help us 1) take advantage of existing code; 2) add back to code base the above features if missing.

 

Brian Wheeler

 

 

Brian Wheeler, Executive Director
Charlottesville Tomorrow
P.O. Box 1591
Charlottesville, VA 22902
bwhe...@cvilletomorrow.org
tel: 434-260-1533
www.cvilletomorrow.org

www.cvillepedia.org

Description: Facebook-IconDescription: Twitter-IconDescription: google_plus_logo

 

 

 

--

image001.png
image002.png
image003.jpg

Jon Cotton

unread,
Apr 11, 2014, 2:44:18 PM4/11/14
to armstr...@googlegroups.com
Hey Brian,

Those are great enhancements. Mobile, geo, personalization and events.

#1 on building a responsive site, Armstrong certainly won't get in the way. The ArmLayout component might actually make things easier. (nutshell: it abstracts the "view" from the object so, in a modular way, you can think about what things should look like instead of what they are.) Chris/Texas Tribune likely have more specific thoughts regarding implementation. The bulk of the work will be revamping the templates with a CSS framework like Foundation[1]. I'd definitely use responsive templates over multiple pages for a mobile site versus desktop site.

#2 geo is outside the scope of current Armstrong. Geo is really just a way to categorize content though. Getting content into the category is separate from viewing/following the category. The second part can take the same approach as viewing/following the other categories/sections you have. Perhaps the same code even.

#3 login - Armstrong doesn't handle this but it won't get in the way either. Django natively provides login; a third-party package will give you social login. python-social-auth is a good package to look at. It handles a huge number of social signins, which is great, but it updates frequently and the changelog is long and hard to keep track of. We used it at The Bay Citizen and it never broke anything, but it took some maintenance to stay up-to-date. If you only want Facebook/Twitter/G+ there probably is another, more tailored package.

As far as then personalizing the data, ArmSections, which I think you are already using, will help. Sections have content, users can "follow" the sections they care about and thus get that organized content. Geo can work like this too if you think of geo as just another way to organize/categorize content. ArmSections is a pretty simple package and is next on my list to update (halfway done). It already does what you need though.

#4 surfacing events. Related content is an Armstrong strength and the 2.x version is worth the update. However, in this case I think there's an easier way. ArmWells is our method of grouping and scheduling content. You could have a "Latest Events" or "Featured Events" WellType, program the Well with whatever event(s) you'd like to feature, and then in the template (for the homepage, article page, whatever) just render that WellType. It's not exactly the "events directly related to this specific content" dynamic situation that you might be looking for. But it is very easy and quick to implement and will get you 90% of the way. Iterate from there.

So mobile and events are the easiest I think. ArmWells particularly will make anytime-programming of events easy while only requiring you to program the template(s) once.

For the geo data model (which maybe you already have) and code you are on your own. Login is easy, personalization is harder. ArmSections will help but you still need the code for user profile/preference management and display of content.

-Jon Cotton

[1]: http://foundation.zurb.com/ 
Reply all
Reply to author
Forward
0 new messages