Difference between revisions of "Computing"
(Imagine us existing for the last 8 years) |
|||
Line 18: | Line 18: | ||
=== Website === | === Website === | ||
− | We look after the URY website | + | We look after the URY website and make sure that other teams are able to keep it full of content. |
− | The website is written in | + | The main public website is written in Go, and our website runs on the '''Nginx''' web server. |
− | |||
− | |||
=== Servers === | === Servers === | ||
Line 33: | Line 31: | ||
Each studio has a few computers, typically running '''Windows''', that are used by presenters for playing out sound, connecting to the Internet, and using our Studio Information Service. These have to be maintained, of course, and it's us that rise to the challenge. | Each studio has a few computers, typically running '''Windows''', that are used by presenters for playing out sound, connecting to the Internet, and using our Studio Information Service. These have to be maintained, of course, and it's us that rise to the challenge. | ||
− | |||
=== Software === | === Software === | ||
Line 42: | Line 39: | ||
[https://ury.org.uk/ceedox/computing:software:in-house:loggerng Ceedox Documentation] | [https://ury.org.uk/ceedox/computing:software:in-house:loggerng Ceedox Documentation] | ||
− | LoggerNG is our | + | LoggerNG is our output logging system. Our Ofcom licence means we have to have a log of 42 days of output at all times - if we aren't recording, we aren't broadcasting. The old logger system runned on some vintage desktop hardware from around 2001, so we needed something new. |
LoggerNG includes two dedicated servers, a ''sox''-based recording program, 65 days of FLAC files and a HTML5 download interface on a third server. It's a big thing, and needs to work 100% of the time, all the time (well, term time). | LoggerNG includes two dedicated servers, a ''sox''-based recording program, 65 days of FLAC files and a HTML5 download interface on a third server. It's a big thing, and needs to work 100% of the time, all the time (well, term time). | ||
Line 51: | Line 48: | ||
The server side of the system manages the ability to play out different audio to different sound cards. It lacks lots of functionality, but is in fact very very good at what it does. | The server side of the system manages the ability to play out different audio to different sound cards. It lacks lots of functionality, but is in fact very very good at what it does. | ||
− | + | It is a computing team joke about people starting BAPS3. Various people have tried this, and the current try is a server called BAPSicle using the WebStudio interface. Let's see if it works. | |
==== If No Show, I Do an Instantly Organised, Unending Show - Totally Outrageous Non-stop Entertainment System (insidious Tones (iTones)) ==== | ==== If No Show, I Do an Instantly Organised, Unending Show - Totally Outrageous Non-stop Entertainment System (insidious Tones (iTones)) ==== | ||
[https://ury.org.uk/ceedox/computing:software:in-house:insidioustones Ceedox Documentation] | [https://ury.org.uk/ceedox/computing:software:in-house:insidioustones Ceedox Documentation] | ||
− | Publically known as URY's Campus Jukebox, this is the system that plays songs when there's not a presenter on air. It's another of our mission critical things as we can't broadcast silence, but it also has lots of neat tricks in the form of a web interface to define a range of pre-defined playlist schedules and some automated playlist generation. Its scheduler is part of the MyRadio framework and integrates with the telnet interface of a little-known thing called Liquidsoap (a Savonet project). Trust us when we say it is very powerful and a lot of fun to play with. | + | Publically known as URY's Campus Jukebox, this is the system that plays songs when there's not a presenter on air. It's another of our mission critical things as we can't broadcast silence, but it also has lots of neat tricks in the form of a web interface to define a range of pre-defined playlist schedules and some automated playlist generation. Its scheduler is part of the MyRadio framework and integrates with the telnet interface of a little-known thing called Liquidsoap (a Savonet project). Trust us when we say it is very powerful and a lot of fun to play with. There's also a lot of shouting and arguing with it too. Its a range of emotions. |
==== MyRadio ==== | ==== MyRadio ==== | ||
Line 81: | Line 78: | ||
Oh, did I mention we're trying to generalise it so other stations can learn what we do under the hood? It's open sourced at [https://github.com/UniversityRadioYork/MyRadio]! | Oh, did I mention we're trying to generalise it so other stations can learn what we do under the hood? It's open sourced at [https://github.com/UniversityRadioYork/MyRadio]! | ||
− | ==== Show Planner ==== | + | ==== WebStudio ==== |
+ | |||
+ | 2020 happened. Pandemic happened. WebStudio got made, to allow people to present from home. Written in TypeScript, React and Redux, with the server side in Python. | ||
+ | |||
+ | ==== Show Planner (this is pretty much dead now, this is here for the history) ==== | ||
[https://ury.org.uk/ceedox/computing:software:in-house:myury:nipsweb Ceedox Documentation] | [https://ury.org.uk/ceedox/computing:software:in-house:myury:nipsweb Ceedox Documentation] | ||
Line 102: | Line 103: | ||
* BAPS, URY's very own custom playout system (Matt Fortune, 20??/??) | * BAPS, URY's very own custom playout system (Matt Fortune, 20??/??) | ||
* The studio clock system (Lloyd Wallis, 2011/12) | * The studio clock system (Lloyd Wallis, 2011/12) | ||
+ | |||
+ | We also spend a lot of time in the studios just tinkering around, and helping engineering team with Outside Broadcasts. | ||
== Prospective members == | == Prospective members == | ||
Line 111: | Line 114: | ||
=== What we use === | === What we use === | ||
− | As Computing Team's goals involve education and development just as much as professionalism and dependability, there is no requirement for prior knowledge. | + | As Computing Team's goals involve education and development just as much as professionalism and dependability, there is no requirement for prior knowledge. We use all of these things, and you'll learn so much more too! |
* Administration of Unix-style systems, especially Debian GNU/Linux and FreeBSD | * Administration of Unix-style systems, especially Debian GNU/Linux and FreeBSD | ||
* Administration of Windows client systems, Active Directory and Windows Server | * Administration of Windows client systems, Active Directory and Windows Server | ||
− | * Python | + | * Python |
+ | * PHP | ||
+ | * Go | ||
* SQL, especially PostgreSQL | * SQL, especially PostgreSQL | ||
− | |||
* Network administration (hardware and software) | * Network administration (hardware and software) | ||
* Continuous integration - Jenkins/Hudson, Travis | * Continuous integration - Jenkins/Hudson, Travis | ||
Line 147: | Line 151: | ||
In a rough reverse chronological order. | In a rough reverse chronological order. | ||
− | * [[ | + | * [[Connor Sanders]] |
+ | * [[Ben Allen]] | ||
+ | * [[Michael Grace]] | ||
* [[Brooke Hatton]] | * [[Brooke Hatton]] | ||
* [[Sophie Kinley]] | * [[Sophie Kinley]] | ||
Line 170: | Line 176: | ||
* [[Computing Updates: Summer 2013]] | * [[Computing Updates: Summer 2013]] | ||
* [[Computing Updates: Easter 2013]] | * [[Computing Updates: Easter 2013]] | ||
+ | * Spring 2021: We're still here, and realising the wiki is very out of date. |
Revision as of 20:20, 13 February 2021
Computing Team | |
---|---|
Maintains URY's computer systems, both hardware and software. Keeps the URY streams and website running. | |
Constitution | |
Created | ??? |
Defined | Here |
Roles | Head of Computing Assistant Head of Computing Webmaster Computing Officer (multiple) |
Contacts | |
General Enquiries | computing@ury.org.uk |
Get Involved | computing@ury.org.uk |
Head of Team | head.of.computing@ury.org.uk |
Computing Team is the URY team responsible for maintaining URY's computer ordinance, both hardware and software.
What do we do?
We like to think of ourselves as the everything team, because while we're limited to poking anything that involves computers, we actually do an incredible amount of stuff:
Website
We look after the URY website and make sure that other teams are able to keep it full of content.
The main public website is written in Go, and our website runs on the Nginx web server.
Servers
We run our own physical servers, which involves a lot of nipping into our server shed to turn things off and on, swap cables around and shout at power supplies. If you like pulling things out of racks, staring at them, sticking RAM in them and putting them back in racks, then we offer one of the finest physical server admin experiences available to York students.
Of course, it isn't all about the hardware. We also do a lot of system administration on the software side, making sure that all the processes that keep URY running stay up and don't tie themselves in knots. We run FreeBSD and Debian GNU/Linux, with a Windows Server domain controller for the desktop systems.
Desktops
Each studio has a few computers, typically running Windows, that are used by presenters for playing out sound, connecting to the Internet, and using our Studio Information Service. These have to be maintained, of course, and it's us that rise to the challenge.
Software
Compteam develop and maintain most of our software in-house, a fact that we are very proud of - know of any other society at the university that can say that? Know of any other student radio station that can say that? We don't. We've listed some of our things below, and linked to our Ceedox wiki which keeps all our technical documentation and secrets. You have to have a URY account to see those pages, I'm afraid, but York students can get one instantly by going to [1].
LoggerNG
LoggerNG is our output logging system. Our Ofcom licence means we have to have a log of 42 days of output at all times - if we aren't recording, we aren't broadcasting. The old logger system runned on some vintage desktop hardware from around 2001, so we needed something new.
LoggerNG includes two dedicated servers, a sox-based recording program, 65 days of FLAC files and a HTML5 download interface on a third server. It's a big thing, and needs to work 100% of the time, all the time (well, term time).
Broadcasting and Presenting Suite (BAPS)
This is another one of our older systems. Written around 2003 in Managed C++, at the time it was seen as everything a presenter would need to do a show - on a computer. Of course, the original designers did not plan for a decade in the future, where social media, HTML5 and APIs are the way of the future, so it is now starting to seem somewhat dated.
The server side of the system manages the ability to play out different audio to different sound cards. It lacks lots of functionality, but is in fact very very good at what it does.
It is a computing team joke about people starting BAPS3. Various people have tried this, and the current try is a server called BAPSicle using the WebStudio interface. Let's see if it works.
If No Show, I Do an Instantly Organised, Unending Show - Totally Outrageous Non-stop Entertainment System (insidious Tones (iTones))
Publically known as URY's Campus Jukebox, this is the system that plays songs when there's not a presenter on air. It's another of our mission critical things as we can't broadcast silence, but it also has lots of neat tricks in the form of a web interface to define a range of pre-defined playlist schedules and some automated playlist generation. Its scheduler is part of the MyRadio framework and integrates with the telnet interface of a little-known thing called Liquidsoap (a Savonet project). Trust us when we say it is very powerful and a lot of fun to play with. There's also a lot of shouting and arguing with it too. Its a range of emotions.
MyRadio
This magical little thing is designed to be the glue for URY's services. Written in PHP, Twig and HTML5, this is essentially our intranet. Here's some of the things it pulls together:
- Presenter Training
- Show Scheduling
- URYPlayer Podcasts
- Show Resources (beds, jingles etc.)
- Show Planning
- In-Studio Information (live messages, news & stats)
- Chart & Playlists
- Central Music Library
- iTones
- Mailing Lists
- Webcams (and archives)
- Show Monitoring
- Statistics
All of this is also exposed using an API [2] which provides us with easy control and remote access to all of the above as well as Users, Committees, Images, Tracklists and our Studio Selector.
This API is then in turn used by a range of our resources, including our RadioPlayer page, E-mail service, MixCloud uploader, Presenter website pages, IRC bot and more. Put simply, this bundle of PHP holds our station together.
Oh, did I mention we're trying to generalise it so other stations can learn what we do under the hood? It's open sourced at [3]!
WebStudio
2020 happened. Pandemic happened. WebStudio got made, to allow people to present from home. Written in TypeScript, React and Redux, with the server side in Python.
Show Planner (this is pretty much dead now, this is here for the history)
Built upon the MyRadio framework, Show Planner is a HTML5 version of the in-studio BAPS client, but in a web browser. It allows anyone to plan shows, upload files and do lots of other neat stuff. If you like lots of pretty client side stuff, with a multi-user editable backend, then you'll love this.
During initial development, it went through several names - BAPSWeb 2, BAPS Planner and NIPSWeb, before eventually being named the more simple Show Planner. It replaced BAPSWeb, a single several-thousand line PHP file and a Comic-Sans interface which were developed around the same time as BAPS itself.
Version 1 was featured as part of our Less Black and More Graphics entry in the Student Radio Awards 2012, but was replaced by the MyRadio integrated version over the next year.
Version 2 of this little gizmo won us a Silver Best Technical Achievement at the Student Radio Awards 2013.
Version 3 is current near-completion, the client-side complete rewritten as part of MyRadio's move to Bootstrap.
Fun
Though Compteam have the burden of a lot of responsibility for critical systems most of the time, really most of us are here to have fun.
Being in and around a student radio station gives people who want to play around with new ideas in an existing context a real jumpstart, and as a consequence whenever we're not fixing stuff we're often in URY working on making new things. Here are a few examples:
- BAPS, URY's very own custom playout system (Matt Fortune, 20??/??)
- The studio clock system (Lloyd Wallis, 2011/12)
We also spend a lot of time in the studios just tinkering around, and helping engineering team with Outside Broadcasts.
Prospective members
Computing Team is always looking for new members, so if you're interested by what we do, send us an email (see the infobox on the right hand side)!
URY membership is £7 if you make a regular habit of poking our systems, but anyone is free to come and have a go. The team often has meetings at on Wednesdays in VBar around 7pm.
What we use
As Computing Team's goals involve education and development just as much as professionalism and dependability, there is no requirement for prior knowledge. We use all of these things, and you'll learn so much more too!
- Administration of Unix-style systems, especially Debian GNU/Linux and FreeBSD
- Administration of Windows client systems, Active Directory and Windows Server
- Python
- PHP
- Go
- SQL, especially PostgreSQL
- Network administration (hardware and software)
- Continuous integration - Jenkins/Hudson, Travis
- Shell scripting
- Systems programming - C, Go, etc.
History
- Computing Team was formed by separation from the Technical Team as URY's dependency on computer systems increased during the late 90s and early 2000s.
- URY's longest ever serving servers (heh) were the First Generation Computing Loggers, in production for 14 years and with 10 years of HDD runtime hours each.
Members (past and present)
Heads of Teams
- 2020-Present: Marks Polakovs
- 2019-2020: Laura Silaja
- 2018-2019: Jordan Cameron
- 2017-2018: Matthew Stratford
- 2017-2017: Charles Pigott
- 2016-2017: Chris Taylor
- 2014-2016: Anthony Williams
- 2011-2014: Matt Windsor
- 2010-2011: Gareth Andrew Lloyd
- 2009-2010: Alex Williams
- 2008-2009: Gareth Andrew Lloyd
- (More to be inserted here)
Other Members
In a rough reverse chronological order.
- Connor Sanders
- Ben Allen
- Michael Grace
- Brooke Hatton
- Sophie Kinley
- Qumarth Jash
- Charles Pigott
- Sam Willcocks
- Adam Taylor
- Andrei-Costin Zisu
- Vivan Jayant (Webmaster, 2012)
- Sam Gamble (2011-12)
- Anthony Williams
- Danny Bell
- Donal Cahill
- Lloyd Wallis (2011-2014, still an active alumnus)
- Andy Durant (as a "computerneer")
- (Expand this list!)
Big Updates
During breaks between terms, CompTeam will often update or upgrade a large number of services. We like to post a list of changes toward the end of the break.
- Computing Updates: Christmas 2013
- Computing Updates: Summer 2013
- Computing Updates: Easter 2013
- Spring 2021: We're still here, and realising the wiki is very out of date.