Profiad Technegol
Daw profiad Talat o'i yrfa broffesiynol yn y sector addysg uwch a hefyd o'i amryw brosiectau personol a chymunedol dros gyfnod hir, gan gynnwys mewn Linux, MacOS a systemau Windows, cynnal gweinyddion, systemau CMS, meddalwedd goruchwylio asedion digidol, ieithoedd rhaglennu a thechnolegau gwe fel PHP, Python, JavaScript, HTML5, XHTML, CSS, XML ac RDF. Mae ei waith yn y gwyddorau gwybodaeth wedi rhoi profiad sylweddol iddo mewn ystod eang o dechnolegau a systemau trefnu gwybodaeth, yn enwedig mewn safonau metadata a thechnolegau gwe semantaidd.
Mae ef wedi creu safleoedd gweithredol ar sail prif systemau goruchwylio cynnwys megis Drupal, WordPress, Joomla! a MediaWiki, a bu'n gweinyddu amryfal wefannau sefydlog a dynamig yn ogystal â chymwysiadau gwe eraill ers 2006, gan mwyaf ar staciau LAMP a LEMP gyda MySQL ond hefyd yn defnyddio Tomcat a gweinyddion gwe eraill.
Gall ef raglenni'n fedrus mewn PHP, Python, Javascript (gan gynnwys JQuery), ac mewn ieithoedd seiliedeg ar C, e.e. Java, C#. Mae ganddo rywfaint o brofiad o ASP.NET a Perl. Mae ef wedi datblygu cymwysiadau gwe cwmwl ar Google App Engine a RedHat OpenShift.
Mae profiad Talat mewn meysydd technegol ac ieithyddol wedi rhoi iddo arbenigedd nodweddol mewn cyfieithu technegol, yn enwedig cyfieithu rhyngwynebau meddalwedd. Darparodd y cyfieithiadau Cymraeg ar gyfer DSpace 1.4, DSpace 1.5 (JSP UI), EPrints 3.1, MetaLib (Ex Libris), Voyager 7 (Ex Libris) a Primo 3.0 (Ex Libris). Cyn hynny, cyfieithodd amryw ryngwynebau eraill, e.e. rhaglenni post gwe i grwp gwirfoddol.
Yn ogystal ag mewn ystod helaeth o brosiectau Ffynhonnell Agored eraill, mae ganddo ddiddordebau personol mewn: peiriannau planedig a chadarnwedd ffynhonell agored, e.e. Raspberry Pi a'r cyfryw, OpenWRT, DD-WRT; y rhaglen OpenSim ar gyfer bydoedd rhithiol a thechnolegau perthynol, isadeiledd negeseua di-oed ar sail XMPP ac IRC; teleffoni VoIP a SIP; IPv6; HTTP/2 and HTTP/3.
- Profiad Cynnal Gweinyddion
- CMS a Wiki
- Meddalwedd Data, Ymchwil a Rheoli Llyfrgelloedd
- PHP
- JavaScript a jQuery
- (X)HTML, CSS, XML ac RDF
- Optimeiddio Peiriannau Chwilio
- Caledwedd
- Rhaglenni Rhwydweithio Cymdeithasol ar Wasgar
- Arall
** Gwefan yn cael ei chyfieithu: ymddiheuraf nad oes fersiwn Cymraeg cyflawn o'r isod ar gael **
Profiad Cynnal Gweinyddion
- Ubuntu Server 6.10+ (2006+)
- Fedora/RedHat (2008-13)
- Debian (2014+)
- Windows Server 2010
- Domain names, DNS & IP routing
- A, AAAA, CNAME, TXT (DMARC & SPF) & MX records
- IPv6 connectivity via Hurricane Electric 6in4 tunnel on Technicolor TG582n router (see blog post)
- Techniques such as reverse proxies, Cloudflare CDN, for IPv6 connectivity without dual-stack infrastructure
- Configured IPv6 firewall rules on Technicolor TG582n router to enable all sites over IPv6
- Optimised DNS servers for IPv4 and IPv6 using Google namebench
- Major security patches
- OpenSSL Heartbleed vulnerability
- CVE-2019-11043 - PHP7.x-fpm + nginx
- Docker
- Various server software
- Node.js projects
- Apache 1.x, 2.x
- Largely LAMP, some stand-alone MAMP and WAMP
- Virtual hosts for a variety of web sites and web applications
- mod_rewrite, mod_proxy, mod_proxy_ajp, mod_python
- used Apache AJP reverse proxy to Tomcat for Greenstone 3, Magnolia (see below)
- used Apache modwsgi Python adapter for CKAN (HTTP & HTTPS)
- mod_perl, e.g. Greenstone 2
- TLS/SSL certificates (CAcert.org, LetsEncrypt & self-signed)
- Apache 2.4 configuration changes
- Nginx
- Static web pages
- Reverse proxy
- HTTP, TCP and UDP proxy servers
- PHP, Python & Perl via Apache
- nginx_substitutions_filter (content URL forwarding)
- Virtual hosts for a variety of web sites and web applications
- used Nginx reverse proxy to Tomcat for DSpace, Greenstone 3, Magnolia (see below)
- used uWSGI to serve Python via Nginx reverse proxy for CKAN (HTTP & HTTPS)
- PHP via PHP-FPM (FastCGI)
- PHP and Hack via HHVM (Hip Hop Virtual Machine)
- Perl with FastGCI, e.g. Greenstone 2
- TLS/SSL certificates (CAcert.org & self-signed)
- SPDY/2 with Nginx 1.4.1, SPDY 3, SPDY 3.1 with Nginx 1.5.12 (see blog post)
- HTTP/2 with Nginx 1.9.5+ (see blog post)
- Migrated sites from Apache 2.4 to Nginx 1.4.1 (replacing Apache mod_rewrite rules etc)
- 2 x PHP/static sites
- 1 x WordPress
- 1 x Joomla!
- 1 x MediaWiki
- Demo sites: CKAN; Greenstone 2; Greenstone 3; Magnolia; Bolt; Anchor
- Various development sites including 1 x Drupal
- Tomcat 5.x - 8.x
- Guacamole HTML5 with VNC, forced TLS/SSL for security
- Magnolia
- Greenstone v3.05
- DSpace 4
- Virtual hosts
- TLS/SSL certificates (CAcert.org & self-signed)
- Twisted
- Qwebirc
- IRC relay bots written in Python
- h2o
- High performance server with HTTP/2 and HTTP/3
- Compiled from source with libuv 1.x, wslay, mruby, libressl
- Compiled latest cURL from source to allow HTTP/3 requests
- HTTP/3 test end point (see blog post)
- PHP via PHP-FPM (FastCGI)
- PHP and Hack via (HHVM Hip Hop Virtual Machine)
- SQL
- MySQL
- Various CMSs (see below)
- FreeSwitch (see below)
- FreeRADIUS (see below)
- OpenSim (see below)
- Scheduled backups
- PostgreSQL
- CKAN (see below)
- DSpace (see below)
- MySQL
- LDAP
- OpenLDAP for FreeRADIUS WPA/WPA2 Enterprise (802.11i) servers for eduroam
- Testing OpenDJ for FreeRADIUS WPA/WPA2 Enterprise (802.11i) servers for eduroam
- Dovecot authentication for IMAP4 & POP3
- LDAP & PAM user authentication for Linux
- N-way multi-master replication for FreeRADIUS for eduroam and email
- SAMBA using OpenLDAP
- SAMBA
- Using OpenLDAP
- E-mail
- SMTP
- Postfix
- Exim4
- IMAP4 & POP3
- Dovecot
- Courier
- SMTP
- webDAV, calDAV & cardDAV
- SabreDAV server
- Nginx using ngx_http_dav_module, nginx-dav-ext-module, lua-nginx-module and Headers-More modules (see blog post).
- VoIP servers
- FreeSWITCH using fs_curl gateway cgi to load dynamic XML configuration
- Configuration of SIP phones with FreeSwitch
- Integration with OpenSim (see below)
- FreeRADIUS
- FreeRADIUS WPA/WPA2 Enterprise (802.11i) servers for eduroam
- MySQL
- LDAP - OpenLDAP, OpenDJ (testing)
- FreeRADIUS WPA/WPA2 Enterprise (802.11i) servers for eduroam
- Instant Messaging Servers:
- Monit (with OpenSim, see below)
- SFTP access within a chroot jail (see blog post)
CMS a Wiki
- MediaWiki
- with Semantic MediaWiki
- Drupal 6 & 7
- e.g. Technical Foundations web site (2011-13) at UKOLN for JISC
- Major Drupal modules, e.g. Content Construction Kit, and many others
- Deployment and modification of themes using CSS, PHP etc
- Migration of blog and page content from WordPress to Drupal (2012)
- Used wget to migrate Technical Foundations and private UKOLN staff intranet from Drupal to static sites (2013)
- Some simple module writing
- Migrated parts of OpenSim Web Interface PHP code
- WordPress etc
- e.g. blog.talatchaudhri.net
- Migrated from self-hosted at WordPress.com to self-hosted WordPress.org
- Customisation of WordPress and Blogger themes, widgets etc
- Migration of blog and page content from WordPress to Drupal (2012)
- Cymdeithas Cymru-Llydaw
- Blog with custom domain at blogspot.com
- Migrated to own domain e.g. blog.domain.example
- e.g. blog.talatchaudhri.net
- Joomla! 3.2+
- Aberystwyth Town Council web site (2017-19)
- Various sites
- Migrated parts of OpenSim Web Interface PHP code
- Others deployed in testing
Meddalwedd Data, Ymchwil a Rheoli Llyfrgelloedd
- CKAN data management system
- DSpace
- Installed DSpace 4 via Nginx reverse proxy, 2014
- Front-end experience 2007-8
- Theming through HTML & CSS
- Testing on local copy using Eclipse with Tomcat
- Responsible for repository and content as front-line production service
- EPrints, Fedora Commons etc
- Largely front-end testing experience as user, 2007-2013
- Greenstone
- Installed v2.85
- Installed v3.05 (Java version on Tomcat7)
- EMP iLex
- 2.3 122+
PHP
- Dropbox PHP Proxy for Dropbox
- Deployed on Apache server at talatchaudhri.info/downloads
- Submitted patch for correct division of HTTP header and response body
- Added dev branch with code to:
- Fix requests for bare domain where final character of URL was not / to point to index.htm(l) in order to act effectively as simple web server
- Modify HTTP response header to send Content-Type: text/html; charset=utf-8 rather than Dropbox default ASCII in order to support character set for additional languages
- Modify HTTP response header to send Last-Modified for correct modified date using JavaScript, rather than the modified date of the proxy script (Dropbox does not run server-side scripts, so this cannot be achieved with PHP)
- Tested and deployed on RedHat OpenShift at and to migrate proxy to cloud server via CloudFlare CDN
- Completely re-wrote code in new branch without
cURL for Google App Engine and similar services that do not allow cURL and other 3rd party C# libraries:
- Deployed via Google App Engine
- Multilingual PHP web sites
- Browser language detection:
- e.g. talatchaudhri.info (cy, en)
- User languages matched in order against those available on the site
- Overrideable by user
- Unlimited extensible language buttons
- e.g. talatchaudhri.info (cy, en)
- The now defunct static site of Cymdeithas Cymru-Llydaw
- Included scripts for online petitions
- Browser language detection:
- Migrated sites to Nginx and h2o servers via PHP-FPM and HHVM (FastCGI)
- OpenSim
- Migrated parts of OpenSim Web Interface PHP code to Joomla! and Drupal
- Wrote code for OpenSim login screen news feed via RSS, site notices
- Wrote back-end recursive link checker script for admin and cron jobs.
JavaScript a jQuery
- OpenSim Maps for OpenSim (part of OpenSim Web Interface)
- Re-wrote JavaScript last modified date script to replace unavailable PHP on Dropbox
- Contact details obfuscation
- Deployed jQuery script to obfuscate e-mail
- Produced simple demo and detailed blog post instructions
- Re-wrote code for better e-mail obfuscation
- Re-wrote to add ability to block spam Skype address harvesting
- Re-wrote to add ability to block phone number harvesting
- Re-wrote to add ability to block XMPP/Jabber address harvesting
- Web page rotator for digital signage platform on Raspberry Pi (see demo)
- Custom looped timer script with arbitrary timings per page
- Animated JavaScript/CSS transitions using ElementTransitions.js
- Agnostic about Web technology and content
- Node.js
- ChwiM-aidd - Chwiliwr Mynegiadau Rheolaidd i adnoddau LlGC
(X)HTML, CSS, XML & RDF
- HTML5 & XHTML
- Migrated talatchaudhri.info
from XHTML 1.0 Transitional to (X)HTML5
- W3C validation to XHTML 1.0 Strict, XHTML 1.1 & HTML5 for polyglot (X)HTML5
- Migrated talatchaudhri.info
from XHTML 1.0 Transitional to (X)HTML5
- CSS3
- Modification of themes (Drupal, WordPress, Blogger) and style sheets for web sites
- Testing using Chrome Developer Tools and FireBug in real time
- W3C validation, e.g. talatchaudhri.info
- WCAG 1.0 & 2.0 accessibility guidelines
- XML site maps (see below)
- KML for Geohash-36, see blog post
- RDF
- FOAF
- e.g. http://talatchaudhri.info/foaf.rdf
- Substantially re-wrote manually after using automatic generation tools
- Dublin Core Application Profiles (see AP Support Project)
- CERIF, e.g. CERIFy project
- schema.org
- Microformats
- Microdata
- RSS
- Wrote PHP code for OpenSim login screen news feed, site notices
- FOAF
Optimeiddio Peiriannau Chwilio
- XML site maps using automatic generator tools
- Installed using robots.txt
- Using <link rel="canonical" href="..." /> to de-duplicate web content for search engines
- Optimising <head>...</head> meta content
- DNS via CloudFlare Content Discovery Network (CDN) using web caching to reduce page load times
Caledwedd
- Many years of experience replacing memory, hard drives, PCI, PCIe cards, fans, power supplies etc
- Flashing router firmware
- OpenWrt
- Compiled and flashed on defunct Inventel Livebox v1.1
- Flashed on Belkin F5D7130 for WPA/WPA2 Enterprise (802.11i) project testing
- Flashed 10.2.x firmware upgrade on Technicolor TG582n router (DANT-1) via TFTP
- Factory default Technicolor firmware 10.2.5.2.BM for IPv6 connectivity (see blog post)
- OpenWrt
- Raspberry Pi (B, B+)
- Digital signage platform
- Chromium and Matchbox on Raspbian Linux
- JavaScript web page rotator
- Content scheduling using cron
- Webcam with Motion
- Digital signage platform
- Banana Pro
- WPA/WPA2 Enterprise (802.11i) servers for eduroam
Rhaglenni Rhwydweithio Cymdeithasol ar Wasgar
- See blog posts on Diaspora (open source)
- Demo installation of movim (open source)
- Longstanding interest in XMPP, JSON, XML technologies etc
Arall
- Git
- Routine use of Git repositories & GitHub, e.g. PHP projects above
- Web site deployment using post-commit hooks
- Previously familiar with SVN checkouts and Git pulls for deploying various software
- OpenSim 0.6.6 > 0.9.x (2009-present)
- Grid mode
- OpenSim Web Interface
- OpenSim Wifi interface
- Various modules, e.g. IRC Bridge, Profile, Groups, Search
- Integration with FreeSWITCH voice server using OpenSim FreeSwitch module (see above)
- OpenSim on flash drive (2010) using MoWeS (discontinued)
- AuroraSim
- Simian Grid (Open Metaverse Foundation)
Diweddarwyd: 21 Mai 2024
Gwybodaeth Cysylltu
E-bost:
Skype:
Proffiliau: Academia.edu,
LinkedIn
Dyn. Ymchwil:
ORCID,
ResearcherID
Allwedd PGP:
0x1A0097B6B4A58FA6
Twitter: talat