-
Posts
8,085 -
Joined
-
Last visited
Content Type
Forums
News
20th
EduGeek EDIT Conference
Blogs
Everything posted by dhicks
-
Is this client-side (i.e. in a web browser) or server-side (Node.js or the Rhino Javascript engine that runs in the Java JVM)? If this is for server-side programming then adding to your existing VM setup seems like a sensible idea, but you should be fine letting them run anything they like in a browser - after all, they could already be downloading and running anything they like in a browser anyway.
-
[hosting] Looking for UK based VPS providers - EduTech based project
dhicks replied to Liam-FD's topic in Web Development
Mythic Beasts have infrastructure split between London and Cambridge: https://www.mythic-beasts.com Positive Internet (UK) run their own Cambridgeshire datacentre: The Positive Internet Company | Home -
At home and school for my own use I use Adobe Premier Elements - it's good value when bought as a stand-alone double-pack along with Photoshop Elements, and it covers most cases where I want to quickly throw together a DVD of some footage of an event or similar. I haven't tried doing the picture-within-a-picture thing with it, though, and for audio I'd tend to export the audio, process it with Audacity and re-import it. For a site-license for pupil use we went with Serif's suite - good value, although I don't think we've had a whole class try to do video editing all at the same time yet. At school we have also bought three full (academic) license for Adobe Creative Suite - around £20 a month per license at academic pricing, which really isn't bad if you are going to use all the features, and more and more the features they are adding automate the tedious bits of video editing, leaving you to concentrate on the interesting bits.
-
I look after what sound, lighting, projection and (given the chance) pyrotechnics equipment we have. We don't have a dedicated drama studio as such, but we've now bought some new portable staging and set up a semi-permanant stage area in our main hall - I'll need to spend some time over summer getting it all set up. We move our kit around a fair bit, so I've been getting it all into flight cases so it's all easy to move. I don't know a great deal about sound or lighting, I just read up on stuff as I go along, so my approach tends to be that of a software developer - if I can write a program to control something, I will, hence our lighting has a Javascript-based control system. If it's any help, I've found modern LED lighting to be much easier to deal with than traditional PAR cans. You can set the colour without having to go and change gels, and there's no bulb to blow and replace. You're probably best off with a mixture of LEDs and PAR cans so you can always get the effect you want.
-
We've discussed painting all the walls (and probably the ceiling) with "magnetic" paint before - just paint with iron fillings in. That might do quite well at blockiong most signals, plus it makes the walls capable of having fridge magnets and so on attached to them.
-
Google HTTPS - Tomorrow! :)
dhicks replied to Steve21's topic in Internet Related/Filtering/Firewall
Would making your own internal search engine page be another option - have your DNS server point Google at a page that sends a search query off to google and returns the results to the user? -
You could use Open vSwitch: Open vSwitch Can be used as a virtual switch (it's the default for XenServer), or you can build your own physical switch (i.e. motherboard with a bunch of additional network ports) to run it on.
-
Could you use a virtual software switch instead? Especially if your test machines are VMs as well, it could work quite well.
-
We're a small-ish school, we don't have a dedicated reprographics room / person. We are in central London, though - does anyone have a recommended next-day print service that costs less than your average print from a photocopier?
-
Sure - you can control a USB camera from Python via the WIA protocol. The code below is taken from a utility we use at Christmas to take photos of the children with Santa, then add a border around the picture and print a Christmas card. I've trimmed out the bits that edit the image. This is run on a Windows machine running ActiveState Python, you might need to make some changes for it run with the standard Python distribution (i.e. I can;t remember if win32com.client is included with Python on Windows as standard or not) import os import time import Image import random import win32com.client rootPath = "C:\Camera\pics" MY_CAMERA="D5100" WIA_IMG_FORMAT_PNG = "{B96B3CAF-0728-11D3-9D7B-0000F81EF32E}" WIA_COMMAND_TAKE_PICTURE="{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}" validRandomChars = "1234567890" def generateRandomString(): result = "" for pl in range(0,5): result = result + validRandomChars[random.randint(0,len(validRandomChars)-1)] return(result) def addZeros(theString, theLength): result = theString while len(result) < theLength: result = "0" + result return(result) # Save an image accquired via WIA to a file. def saveImage(image, imageIndex): filename = addZeros(str(imageIndex),5) + "-" + generateRandomString() + ".jpg" while filename in os.listdir(rootPath): filename = generateRandomString() image.SaveFile(rootPath + os.sep + filename) return(filename) # Checks the camera attached via the WIA protocol (Windows's implemenattion of PTP) and grabs # any new photos as they appear. def acquireImage(): # Find the camera devman=win32com.client.Dispatch("WIA.DeviceManager") for info in devman.DeviceInfos: for prop in info.Properties: if prop.Name=="Name" and prop.Value==MY_CAMERA: dev = info.Connect() previousCount = dev.Items.count while True == True: currentCount = dev.Items.count for pl in range(previousCount, currentCount): imagePath = saveImage(dev.Items[pl].Transfer(WIA_IMG_FORMAT_PNG), pl) previousCount = currentCount time.sleep(1) acquireImage()
-
We currently have desktop machines in classrooms, which we hope to replace with nice all-in-ones over the summer. We're also thinking of a bank of Chromebooks for staff to use at home if they want to - they can connect to our remote access server with those no problem.
-
I got mine, complete with VESA mount, from Tranquil PC. The case is made from a solid chunk of metal, no fan needed, so if you fit an SSD you get a machine with no moving parts.
-
@Oaktech - any updates on what you plan to do? We still have a stack of 2.5" drives to swap with you if you want, just let us know what you want to do.
-
Assuming this is the same as we had last year then no, this is nothing to do with checking compliance, it is simply a usage survey. There is no checking of any resources in classrooms or files on the network, it's just some paper and electronic forms to fill in by staff when they use a photocopier or a resource from the Internet.
-
Yes, we did this last year - it turns out to be a less onerous task than you'd think it might be. You get a cardboard post box and a stack of forms to put by each photocopier, and each time a teacher photocopies a page from a book they fill in a form and drop it in the postbox. As pointed out above, I imaganed staff taking ages to fill in a form each time, but the chap collecting the forms seemed quite happy with the dozen or so he used to find in each psot box per week, so I don't think they expect a massive amount. Same goes for the web-based form - asfter we'd made sure it was unblocked on our web filter and that staff had a short cut we didn't really have much to do with it again, as long as a few people fill it in that seems to be fine. They are really just looking to judge the proportion of fees that go to each organisation they collect money for - the price of your CLA license won't change, but the proportion that goes to publishers / web-based resources / etc might change. As long as they have enough forms to give a rough idea of the propotions for each they seem pretty relaxed about the whole thing.
-
Good point - and I will, but now I've read the link you posted above, I realise that just pinning a file doesn't actually place it right away on the SSD tier, you have to run the optomisation task first for Windows to spot the pinned content and shuffle it around. I've done that with the VHDX files for our test machine and re-run CrystalDiskMark. Results are: The first result is before I ran the "pin" command on the VHDX file. The second one is immediatly after, and the third one is after I'd run the optomise schedualed task. Just based on those results, there seems to be pretty much no difference in performance between pinned and unpinned data. I'll try DiskSPD.exe instead.
-
So, after the test files have been created as above, if I comment out the part in the Python scripts that deletes those files so I can pin them to the SSD tier... > $StorageTier = Get-StorageTier -FriendlyName "KS-TIERED01_Microsoft_SSD_Template" > Set-FileStorageTier -DesiredStorageTier $StorageTier -FilePath "E:\Benchmark\100MiB.txt" > Set-FileStorageTier -DesiredStorageTier $StorageTier -FilePath "E:\Benchmark\1GiB.txt" > Set-FileStorageTier -DesiredStorageTier $StorageTier -FilePath "E:\Benchmark\4GiB.txt" > python.exe .\benchmark.py 100MiB 5 Write: 383.186047684 MB/s Read: 239.349172213 MB/s > python.exe .\benchmark.py 1GiB 5 Write: 401.851234381 MB/s Read: 181.86126146 MB/s > python.exe .\benchmark.py 4GiB 5 Write: 412.107014987 MB/s Read: 192.065022822 MB/s Around about the same - hopefully my benchmark is testing the correct thing, i.e. file read / write performance on tiered storage on repeat copies of the same data where the storage tiering system can see it's the same data being copied. Pinning the test files to the SSD tier doesn't seem to make any real difference, so hopefully it's the SSD tier that's being tested in the first place.
-
I wrote the following in Python: import os import sys import time import shutil import random fileData = {} fileData["100MiB"] = [104857600] fileData["1GiB"] = [1073741824] fileData["4GiB"] = [4294967296] testSize = "100MiB" if len(sys.argv) > 1: testSize = sys.argv[1] testLoops = 5 if len(sys.argv) > 2: testLoops = int(sys.argv[2]) randomString = "" for pk in range(0, 1024): randomString = randomString + chr(random.randint(0, 255)) def createFile(fileName, fileSize): outfile = open(fileName, "wb") for pl in range(0, fileSize, 1024): outfile.write(randomString) outfile.flush() outfile.close() def clearFiles(): for filename in os.listdir("C:\\Benchmark\\"): os.remove("C:\\Benchmark\\" + filename) for filename in os.listdir("E:\\Benchmark\\"): os.remove("E:\\Benchmark\\" + filename) clearFiles() createFile("C:\\Benchmark\\" + testSize + ".txt", fileData[testSize][0]) resultArray = [] for pl in range(0, testLoops): startTime = time.time() shutil.copyfile("C:\\Benchmark\\" + testSize + ".txt", "E:\\Benchmark\\" + testSize + ".txt") operationTime = time.time() - startTime resultArray.append((fileData[testSize][0] / operationTime) / 1048576) result = 0 for pl in range(0, len(resultArray)): result = result + resultArray[pl] print "Write: " + str(result / len(resultArray)) + " MB/s" resultArray = [] for pl in range(0, testLoops): startTime = time.time() infile = open("E:\\Benchmark\\" + testSize + ".txt", "rb") randomData = infile.readlines() infile.close() operationTime = time.time() - startTime resultArray.append((fileData[testSize][0] / operationTime) / 1048576) result = 0 for pl in range(0, len(resultArray)): result = result + resultArray[pl] print "Read: " + str(result / len(resultArray)) + " MB/s" clearFiles() The idea was to create a file of the appropriate size that I then copy around multiple times to see what kind of performance we get. I get the results below: > benchmark.py 100MiB 5 Write: 471.016959734 MB/s Read: 214.194644203 MB/s > benchmark.py 1GiB 5 Write: 383.208574217 MB/s Read: 174.081253186 MB/s > benchmark.py 4GiB 5 Write: 422.7091218 MB/s Read: 199.71821858 MB/s
-
Good point. For each individual drive, in Windows (set via the "Policies" tab for each harddrive from Device Manager), no. For the Microsoft Storage Space Device constructed from a composite of those individual disks, yes. For the HP P420i RAID controller, for individual disks (well, individual 1-drive-sized disk arrays), no. I can change that via HP Smart Storage Administrator by setting the Physical Drive Write Cache State - new results: That seems to even the figures out somewhat, although the stated read performance seems to have around about halved in some cases. I think the issue is that this benchmark isn't testing what Storage Spaces actually does. I'll try a script that copies some files around, see if I can better make it mirror an actual workload.
-
Right, so I've just managed to get our test server up and running with tiered storage - 2 x 128GB Kingston SSDs and 4 x 500GB 2.5" drives taken from laptops during upgrades, so not the most "enterprise" of drives. CrystalDiskMark gives: This compares with our current productions servers, Dell machines with RAID cards with 1GB of cache RAM each: And, for comparison, AButters' results for tiered storage from earlier in this thread: Write speed on our array is rather poor. Thinking through why this is, I'm wondering if the benchmark is actually mesuring the correct thing. This is tierd storage, the SSD is not acting as a cache, so when (random, benchmark-generated) data is written it is written straight to the crusty, slow second-hand harddrives. Windows would only move that data to the SSD tier if it figured it was often used, which it isn't going to be with a synthetic benchmark. The figures above are telling me that SSD read speed is okay, which is nice, and that the other harddrives are slow, which I know already.
-
Does your internet security allow staff to watch help guide videos?
dhicks replied to Schoolcomms's topic in MIS Systems
We allow YouTube and Vimeo, although our filter (Lightspeed) does enforce Youtube's Safe Search mode at all times, so nothing that Youtube sees as "unsafe" will be viewable. Until Google get Youtube For Schools sorted out there's not much we can do about that - we can't enable individual Youtube videos at the moment. Under "other ideas", if it's any help, our VLE (Firefly) lets page creators embed both Youtube and Vimeo clips in a page. I don't know if it's possible to provide a handy Firefly (or other VLE) compatible set of pages / lessons all handily packaged so you simply import them, ready to assign as exercises to people. -
The quotes we've had are for 200Mb fibre leased lines with an ADSL line as backup, in case something happens to the fibre connection - a separate line, but provided by the same ISP. I suppose, actually, you could maybe use the ADSL line for some extra download capacity, too.
-
I found pretty much the same - the cloud looks good at the moment for holding a live, ready-to-go mirror of our server VMs, and Azure / AWS services look affordable, but actually having a bunch of Windows-network servers running in the cloud the whole time starts to get expensive. Pricing wise, for a 200 megabit connection over a gigabit bearer, complete with ADSL line backup, we're looking at prices of somewhere around £10,000 per year. That is a cost, but it is getting affordable - prices might be different in other parts of the country, of course.
-
Chromeboxes and virtual desktops
dhicks replied to NotSoFast's topic in Thin Client and Virtual Machines
We're aiming for much the same kind of setup as you, by the sound of it, although we haven't got quite as far along with the implementation. For remote desktop on the Chromebooks I was planning to use an HTML5-capable RDP client, i.e. one that needs just a web browser to work. I've tried to get Guacamole Server working but with little success so far - seemingly there's a similar system (that I've forgotten the name of...) that costs somewhere under £1,000 for 30-ish licenses, which sounds like it would match our needs quite nicly - I'll see if I can find the details. -
I couldn't find a handy one-click mechanism to mirror local servers to Google Compute Engine, though - both Azure and AWS would seem to have services that you install and leave to run, mirroring your current live servers into the cloud for you to switch over to as needed. I couldn't find a Google equivilant anywhere, although I'd be very interested if there was one!
