IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Saturday, 13 October


Merging for what? Bernard Davies asks IN DEFENCE OF YOUTH WORK


Bernard Davies responds to the series of mergers in the youth sector.

The recent BBC documentary on the 2008 collapse of the Royal Bank of Scotland was a stark reminder of how crucial mergers are to the way the neo-liberal global economy operates. Far from small is beautiful, one of its bottom-lines seems to be: the bigger the better otherwise, as RBSs earlier history showed, your business will be seen as insignificant and vulnerable to take-over. Once this gets itself beyond the stage of being the hunted, however, thoughts are then liable to turn increasingly to how to become the predator to the point where, as in RBSs case, the power this brings and the hubris this encourages make taking over others almost an end in itself.

All of which prompted me to wonder whether any of this kind of thinking has driven the youth work fields rush to mergers over the past decade? After all, the BBC programme came within days of the latest such example: the announcement that the Centre for Youth Impact (CYI) a community of organisations that work together to progress thinking and practice around impact measurement in youth work and services for young people- is in effect to take over Project Oracle. This was an organisation which had been describing its purpose as supporting children and youth organisations and funders to produce, use and share high-quality evidence.

Some of the voluntary youth sectors earlier mergers have had much more...


Hacktoberfest 2018: How you can get your free shirteven if youre new to coding - Medium

Hacktoberfest 2018: How you can get your free shirteven if youre new to coding

The design for 2018s Hacktoberfest shirt

Every October, Digital Ocean and GitHub ship out free Hacktoberfest shirts to thousands of people around the world.

Ive gotten Hacktoberfest shirts the past two years, and I wear them with pride.

In this quick article, Ill show you how you can get a Hacktoberfest shirteven if youre new to coding.

The bottom line is this: if you can open 5 pull requests by October 31and Ill walk you through how to do thisyou can get your own Hacktoberfest shirt shipped to your door for free.

Step #1: Register for Hacktoberfest

You need a GitHub account. If you dont have one yet, you can create one for free in just a few minutes.

Then go to the Hacktoberfest registration page and follow the instructions. It only takes a moment.

Step #2: Learn how to make a pull request

Pull requests are a way of contributing your code changes to an open source project. They use a tool called Git, which runs on a social coding platform called GitHub.

GitHub is the center of the open source universe, and is home to projects like Linux and React.js.

It can take months for developers to get good enough to contribute to some of these projects. But the freeCodeCamp community has made it easy for absolute beginners to contribute to our open source project.

You can contribute to freeCodeCamp right in your browser on GitHub. You dont need to install anything on your computer. You dont even need to know a programming language. You just need to choose an article you want to help improve.

Heres a short gif showing how you can do this:

A Gif showing how to make an open source contribution to an article, right in your browser.

The steps are:

  1. Explore the freeCodeCamp repository and choose an article you want to help improve.
  2. Open that folders file by double-clicking it.
  3. Click the pen symbol in the upper right-hand corner to edit it.
  4. Make your changes to it. You can check out this basic Markdown cheat-sheet if you want to see how to add images or videos. You dont even need to know HTML.
  5. Scroll down and describe your changes in the commit message.
  6. Make sure the Create a new branch for this commit and start a pull request radio button is selected.
  7. C...


How to setup TinyMCE in your Rails app using Webpack - Medium

The popularity of using Webpack to deal with your assets in Rails is steadily increasing. Getting started is really straightforward. If you are starting a new app, you simply run rails new my_app --webpack and Rails takes care of the rest.

Thanks to the webpacker gem, adding Webpack to your existing application is also pretty uncomplicated. You add the gem to your Gemfile, bundle, and finally install webpacker:

gem 'webpacker', '~> 3.5'
bundle exec rails webpacker:install

This is pretty sweet. Now all you need to do is link your JavaScript pack and the CSS imported in it into the head of your application.html.haml:

<%= javascript_pack_tag 'application' %> <!-- js from app/javascript/packs/application.js -->
<%= stylesheet_pack_tag 'application' %> <!-- CSS imported via Wbpack -->

Once this is done, you are ready to write your modern JavaScript code and make use of all the great libraries out there.

What is tinyMCE?

TinyMCE is a rich text editor in the cloud. To put it simply, its like Word that can be implemented into your app.

The project I am working on uses it to let admins edit the content of the front page. Thanks to TinyMCE, it isnt necessary to build a separate admin interface for that purpose. But the editors usage can be much more versatile. Think, for example, of what Wordpress or Evernote allows you to do thanks to their build in tools.

Example use of TinyMCE. The power is in the users hands now.

Usage via CDN

We originally implemented the editor via CDN (e.g. linking the script in the head of our application.html.haml) like this:

%meta ... <!-- some meta content -->
%title ... <!-- MyApp -->
= csrf_meta_tags
    %script{src: ''}

= stylesheet_link_tag 'application', media: 'all'
= javascript_include_tag 'application'
<!-- the usual body stuff -->

This required adding a file with our customized function in app/assets/javascript/tinyMce.js. Note that we are also using jQuery.

$( document ).on('turbolinks:load', function() {
selector: 'textarea.tinymce',

// some other settings, like height, language,
// order of buttons on your toolbar etc.

plugins: [


Fibonaccis Strange Loop: the beauty of mathematical inception - Medium

Photo by Diana Deaver on Unsplash

Its hard to take an algorithms 101 class without encountering the Fibonacci sequence. The sequence is deeply connected to the golden ratio, which appears over and over again in nature, architecture, art, and the occasional Dan Brown novel. From conch shells to sacred geometry, the Golden Ratio appears to be encoded into many aspects of our universe.

Enumerating everywhere the golden ratio appears would be quite an undertaking, but one of my favorite places where it appears is inside of itself. A recursion inside a recursion; a mathematical inception; what Hofstadter might call a strange loop.

In computer science the sequenceand the different strategies for computing itare also good teaching tools. The Fibonacci sequence can be computed with a clean and simple example of recursion:

As a computer science instructor, I have watched numerous faces scrunch up in confusion when seeing this function for the first time. You can call a function from inside itself? they might ask, How the heck does that work?! Admittedly, I take a small amount of pleasure in my students confusion. Confusion is an integral part of learning, and if a student is never confused I tend to feel that they arent being challenged enough.

One of the most wonderful things about this implementation of the Fibonacci sequence is that the code very closely matches the very definition of the sequence.

The sequence was first described in 1202 by Leonardo Fibonacci. The sequence starts with two 1s, and subsequent digits are computed by adding the previous two digits together. So for the 3rd digit, 1 + 1 = 2, and the 4th digit 1 + 2 = 3, then 2 + 3 = 5 Here are the first few digits:

1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 

The Python code above reads just like that definitionif n is 0 or 1, return 1, otherwise, return the result of adding fib(n-1) to fib(n-2), AKA return the sum the previous two digits of the sequence. In addition to the sequence itself, Fibonacci discovered the sequences relationship to the golden ratio.

The golden ratio is an irrational number. Like (Pi), it has an infinite number of digits past the decimal and never falls into a repeating pattern. Just like most people remember as 3.14, its good enough to remember the golden ratio as 1.618. Also like P...

Friday, 12 October


Knowledge and control Education, Economy and Society

In a flashback to the 1970s and early 80s, last Tuesdays Guardian Education profiled sociologist Michael Young, then a curriculum radical,  author of books and articles on the relationship between knowledge, power and control and influential  in teacher education Young and colleagues argued that the school curriculum reflected the culture and interests of the Continue reading Knowledge and control


How to combine Webpack 4 and Babel 7 to create a fantastic React app - Medium

Photo by NeONBRAND on Unsplash

I previously wrote an article called How to conquer Webpack 4 and build a sweet React app. Soon after I wrote the article, babel swooped in with a major breaking change and many of the packages got deprecated. So I decided to write a new tutorial.

I will focus on setting up webpack with react which will have .scss support along with code splitting

The purpose for writing this again is simple: I want everyone to feel comfortable. Because setting up webpack can be really daunting. Especially for new developers out there. Follow along, and what seemed difficult and maybe scary will seem like a piece of cake.

Before we start, here is the source code. I know this has loads of things in it. I plan to use the same code base to talk about webpack, react, SCSS, hot module replacement, testing with jest and enzyme, linting code, and adding a code formatter like prettier in other articles to come, so I will continuously keep on updating this code base. I will not bloat this code baseI promise.

Note: If you feel like making a PR for the repository, you are more than welcome :) So lets get started.

For simplicity sake, this article is only going to focus on;

  • Setting up Webpack 4 with Babel 7 for React
  • Support for .SCSS
  • Code Splitting
  • Development environment with HMR (Hot Module Replacement)
  • Production configuration
  • Dividing your Webpack configuration into chunks
  • Handling staging, demo, production, test and other environments in code
  • Generating a visualizer in production build to check which chunk of code took how much size and what are the dependencies of the chunks. Super useful.


You need to have node installed in order to use npm (node package manager).

First things first, create a folder called app then open up your terminal and go into that app folder and type:

npm init -y

This will create a package.json file for you.

Second create a folder called src in your app folder. Inside app/src create a file called index.js and write the following code.



A Basic Guide to Choosing the Right Tech Stack for Client Work - Medium

Photo by Robert Anasch on Unsplash

Understanding the impact of choosing the right tech stack is a major factor of success for freelance developers. This guide explores key questions that you should answer when picking the best technologies for your clients application or website. We urge you to read it before hopping carelessly on the latest JavaScript framework.

As most developers who have a bit of experience know, building software professionally is not only about shipping promptly. Its also about optimizing for maintainability, scalability, and security, and the level of each depends on the clients business.

A proper analysis of the project will dictate which technologies you should be using, not the other way around. This simple principle will foster great, long-term business relationships.

The impact of your tech choices will be felt at almost every layer of the business, from HR to finance, from management to marketing. A lack of vision could ruin your reputationan asset no freelancer should compromise.

To build the following list, we interviewed senior freelance developers about the important questions they ask themselves before they write a single line of code. We divided the results into 3 blocks: understanding the project (business perspective), picking the stack (technical perspective), and passing the torch (HR perspective).

Lets get started.

Understanding the project

Its mandatory that you understand the product vision, the clients business, and the timeframe of the project.

What is the Scope, Budget, and Timeframe of the project?

Does your client need everything delivered in 2 weeks to survive, or is it a long-term project that requires robustness and maximum maintainability?

You ought to know:

  • When does it need to be delivered?
  • How many of your hours can they pay for?
  • What is the expected result?

The answers will define the rough frame for the following questions. It is also a very good way to know if your client has realistic expectations before you start (for more information about signals to identify terrible clients, read this post).

Is it a one-timer or a long-term...


How to become a pro with React setState() in 10 minutes - Medium

flat lay photography of MacBook surrounded by office supplies by rawpixel on Unsplash

This article is aimed at people who have already had their first approach to React, and who, as beginners, have doubts about how setState works and how to use it correctly. It should also help mid to senior devs use cleaner and more abstracted ways of setting state, and make higher-order-functions handle and abstract state.

Just read and have fun!

So grab a cup of coffee and keep reading! 

Basic Concepts of setState( )

React Components let you split the user interface (UI) into independent, reusable pieces, so you can think about each piece in isolation.

Conceptually, components are like JavaScript functions. They accept arbitrary inputs (called props) and return React elements describing what should appear on the screen.

If you need to give the user the opportunity to input something or in some way change the variables the component is receiving as props, youll need setState.

Whether you declare a Component as a function or a class, it must never modify its own props.

All React Components must act like pure functions with respect to their props. This means functions that never try to change their inputs and always return the same result for the same inputs.

Of course, application UIs are dynamic and change over time. Thats why state was created.

State allows React components to change their output over time in response to user actions, network responses, and anything else, without violating this rule.

Components defined as classes have some additional features. Local state is a feature available only to class Components.

setState is the API method provided with the library so that the user is able to define and manipulate state over time.

Three Rules of Thumb When Using setState( )

Do Not Modify State Directly

wrong and right ways of setting state

State Updates May Be Asynchronous

React may batch multiple setState() calls into a single update for performance.

Because this.props and this.state may be updated asynchronously, you should not rely on their values for calculating the next state.

manipulate state with a functional approach

You should always do this kind of manipulation with a functional approach, supplying th...

IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Resource generated at IndyWatch using aliasfeed and rawdog