The Architecture of Open Source Applications
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Using New Technologies for Library Instruction in Science and Engineering: Web 2.0 Applications
University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln Faculty Publications, UNL Libraries Libraries at University of Nebraska-Lincoln October 2006 Using New Technologies for Library Instruction in Science and Engineering: Web 2.0 Applications Virginia A. Baldwin University of Nebraska-Lincoln, [email protected] Follow this and additional works at: https://digitalcommons.unl.edu/libraryscience Part of the Library and Information Science Commons Baldwin, Virginia A., "Using New Technologies for Library Instruction in Science and Engineering: Web 2.0 Applications" (2006). Faculty Publications, UNL Libraries. 56. https://digitalcommons.unl.edu/libraryscience/56 This Article is brought to you for free and open access by the Libraries at University of Nebraska-Lincoln at DigitalCommons@University of Nebraska - Lincoln. It has been accepted for inclusion in Faculty Publications, UNL Libraries by an authorized administrator of DigitalCommons@University of Nebraska - Lincoln. Using New Technologies for Library Instruction in Science and Engineering: Web 2.0 Applications “Quantum computation is... a distinctively new way of harnessing nature... It will be the first technology that allows useful tasks to be performed in collaboration between parallel universes.” … David Deutsch, The Fabric of Reality: the Science of Parallel Universes-- and its Implications http://en.wikiquote.org/wiki/David_Deutsch INTRODUCTION The transformational concept of Web 2.0 for libraries was a hot topic at three major conferences in June of 2006. The American Library Association (ALA), Special Libraries Association (SLA), and the American Society for Engineering Education (ASEE) conferences all had sessions on the subject. Not all of the focus was on sci-tech libraries. An exploration of the use of these technologies for library instruction in science and engineering fields is the emphasis for this column. -
Ironpython in Action
IronPytho IN ACTION Michael J. Foord Christian Muirhead FOREWORD BY JIM HUGUNIN MANNING IronPython in Action Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> IronPython in Action MICHAEL J. FOORD CHRISTIAN MUIRHEAD MANNING Greenwich (74° w. long.) Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact Special Sales Department Manning Publications Co. Sound View Court 3B fax: (609) 877-8256 Greenwich, CT 06830 email: [email protected] ©2009 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15% recycled and processed without the use of elemental chlorine. -
Mariadb / Mysql for Web Developers
www.fromdual.com MariaDB / MySQL for Web Developers Web Developer Congress 2020, remote Oli Sennhauser Senior MariaDB & MySQL Consultant at FromDual GmbH https://www.fromdual.com/presentations 1 / 27 About FromDual GmbH www.fromdual.com Support Consulting remote-DBA Training 2 / 27 Contents www.fromdual.com MariaDB / MySQL for Web Developers ➢ Databases ➢ Connecting to the database ➢ Basic database queries (SELECT) ➢ Changing Data (DML) ➢ Transactions ➢ Error Handling and Debugging ➢ Joining Tables ➢ Indexing 3 / 27 What are databases for? www.fromdual.com ● Primarily: Relational DBMS (RDBMS) ● Storing Business Information: ● CRM, ERP, Accounting, Shop, Booking, etc. ● What are they NOT for (non optimal)? ● Logs → Files, Logstash ● Images, PDFs, huge texts → Filer, Solr ● Trash → Waste bin 4 / 27 Different types of databases www.fromdual.com ● Flat files, CSV, ISAM ● Hierarchical database ● Relational databases (RDBMS) ● Network databases ● Object Oriented databases (OODBMS) ● Object Relational DBMS (ORDBMS) ● Graph databases ● Column Stores (MariaDB CS) ● "Document" Stores (JSON, MongoDB) ● Wide Column Stores (Cassandra, HBase) 5 / 27 Common Relational DBMS www.fromdual.com ● MariaDB ● more in the Web-Client-Server field (LAMP) ● MySQL ● more in the Web-Client-Server field (LAMP) ● PostgreSQL ● more in the fat-Client-Server Business Software field ● SQLite ● Not a real "Client-Server-DBMS" → Library ● Embedded DBMS (Industry, Firefox, etc.) 6 / 27 Connection to the DBMS www.fromdual.com ● GUI (MySQL Workbench, HeidiSQL) ● CLI (mariadb, -
What Is Dot Net (Pdf)
What is .NET 1 outline • .NET framework • CLR • CLI, CIL, MSIL • ADO.NET, ASP.NET, MVC, webforms, razor • Mono • .NET Core • .NET Standard 2 .NET framework • Software framework • First released early 2000’s • “consists of the common language runtime (CLR) and the .NET Framework class library (FCL)” [1] • Provides a “code execution environment” • Various runtime hosts for the CLR [2] • ASP.NET (via ISAPI filter) • Executable • Can write your own 3 CLR • The virtual machine that manages execution of .NET programs [3] • Memory • Threads • Code trust • Type checking • pinvoke • JIT compiling to execute on current hardware 4 .NET Framework and CLR • Framework and CLR are different [4] • Can technically run different framework versions within the same CLR version • E.g. Windows XP only supports framework up to 4.0, running 4.5 apps is theoretically possible (with some hex editing of the binary) as long as calls are restricted to methods that were the same in 4.0 (e.g., no extensions) [5] • Recent framework updates have been focused on • Optimization (including SIMD) • Accessories (stylus, touch screen, etc) • Security 5 CLR, CLI, CIL • Common Language Infrastructure (CLI) • Open standard that describes executable code [6] • Common Intermediate Language (CIL) [7] • Aka “IL” • Formerly MSIL • Object oriented assembly language • Platform independent • A compiler takes source code and • Converts it to CIL using the CLI specification • Adds any required metadata (type information, etc) • This is an “assembly” 6 CLR, CLI, CIL • Visual Studio tooling -
Eagle: Tcl Implementation in C
Eagle: Tcl Implementation in C# Joe Mistachkin <[email protected]> 1. Abstract Eagle [1], Extensible Adaptable Generalized Logic Engine, is an implementation of the Tcl [2] scripting language for the Microsoft Common Language Runtime (CLR) [3]. It is designed to be a universal scripting solution for any CLR based language, and is written completely in C# [4]. Su- perficially, it is similar to Jacl [5], but it was written from scratch based on the design and imple- mentation of Tcl 8.4 [6]. It provides most of the functionality of the Tcl 8.4 interpreter while bor- rowing selected features from Tcl 8.5 [7] and the upcoming Tcl 8.6 [8] in addition to adding en- tirely new features. This paper explains how Eagle adds value to both Tcl/Tk and CLR-based applications and how it differs from other “dynamic languages” hosted by the CLR and its cousin, the Microsoft Dy- namic Language Runtime (DLR) [9]. It then describes how to use, integrate with, and extend Ea- gle effectively. It also covers some important implementation details and the overall design phi- losophy behind them. 2. Introduction This paper presents Eagle, which is an open-source [10] implementation of Tcl for the Microsoft CLR written entirely in C#. The goal of this project was to create a dynamic scripting language that could be used to automate any host application running on the CLR. 3. Rationale and Motivation Tcl makes it relatively easy to script applications written in C [11] and/or C++ [12] and so can also script applications written in many other languages (e.g. -
Extending Actionability in Better Code Hub Suggesting Move Module Refactorings
Extending Actionability in Better Code Hub Suggesting move module refactorings Teodor Kurtev [email protected] July 14, 2017, 48 pages Supervisor: dr. Ana-Maria Oprescu, [email protected] Host supervisor: dr. Magiel Bruntink, [email protected] Host organisation: Software Improvement Group, Inc., https://www.sig.eu Universiteit van Amsterdam Faculteit der Natuurwetenschappen, Wiskunde en Informatica Master Software Engineering http://www.software-engineering-amsterdam.nl Abstract Undoubtedly, refactoring can have a positive effect on overall system quality, and it is a critical part of the work cycle of every developer. However, finding the right refactoring opportunities can be a difficult task. This is particularly the case for refactorings related to overall system structure. One of the best ways to address such issues is to apply the move module refactoring. In this thesis, we propose a way of automatically detecting refactoring opportunities for move module refactorings in the context of the C# language using a Compiler as a Service (CaaS) - Roslyn. We evaluate our approach using seven open source projects and an expert panel. The results from these validation experiments showed our approach as promising - the group of experts found more than half of the proposed refactorings useful. 1 Contents Abstract 1 Acronyms 5 1 Introduction 6 1.1 Problem analysis....................................... 6 1.2 Research questions...................................... 7 1.3 Solution outline........................................ 8 1.4 Definitions........................................... 8 1.5 Outline ............................................ 8 2 Background 10 2.1 Refactoring .......................................... 10 2.2 Code smells.......................................... 10 2.3 Move module refactoring................................... 11 2.4 Better Code Hub (BCH) and the SIG Maintainability Model ............. -
The History of Mediawiki and the Prospective for the Future
The history of MediaWiki and the prospective for the future Bern, 2017-02-04 Magnus Manske https://commons.wikimedia.org/wiki/File:MediaWiki_talk,_Bern,_2017-02-04,_Magnus_Manske.pdf Overview ● History of MediaWiki, with a focus on Wikimedia ● Usage, extensions and scripts ● Wikidata ● Of course, a few tools Pre-history UseModWiki by Ward Cunningham ● Single file Perl script ● All data stored in file system ● Does not scale well ● No “special pages” beyond Recent Changes ● Default: delete revisions older than two weeks, to save disk space… ● Used for Wikipedia since 2001-01 Phase 2 ● Mea maxima culpa ● Switch on 2002-01-25 ● PHP (for better or worse) ● Using MySQL to store data ● Based on UseModWiki syntax for backwards compatibility Brion Vibber Photo by JayWalsh CC-BY-SA 3.0 Tim Starling Photo by Lane Hartwell Nostalgia Wikipedia screenshot CC-BY-SA 3.0 Phase 3 / MediaWiki ● Massive refactoring/rewrite by Lee Daniel Crocker ● Proper OO, profiling functions ● Known as “Phase 3”, subsequently renamed “MediaWiki” (July 2003) Lee Daniel Crocker Picture by User:Cowtung, CC-BY-SA 3.0 New features since UseModWiki (for Wikipedia) ● Namespaces ● Special Pages with advanced functionality ● Skins ● Local (later: Commons) file upload ● Categories ● Templates ● Parser functions ● Table syntax ● Media viewer ● Visual editor ● Kartograph MediaWiki today ● Most widely used Wiki software ● Over 2,200 extensions ● Customizable via JavaScript gadgets and user scripts ● Comprehensive API Multiple caching mechanisms for large installations (e.g. Wikipedia) -
Die C# Schnittstelle Der Referenzattributgrammatik- Gesteuerten Graphersetzungsbibliothek RACR: Übersicht, Anwendung Und Implementierung
Fakultät Informatik - Institut für Software- und Multimediatechnik TECHNICAL REPORTS ISSN 1430-211X TUD-FI15-06 Oktober 2015 Daniel Langner, Christoff Bürger Fakultät Informatik, Lehrstuhl Softwaretechnologie Die C# Schnittstelle der Referenzattributgrammatik- gesteuerten Graphersetzungsbibliothek RACR: Übersicht, Anwendung und Implementierung Technische Universität Dresden Fakultät Informatik Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie 01062 Dresden Germany Technische Universität Dresden Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Entwicklerhandbuch Die C# Schnittstelle der Referenzattributgrammatik-gesteuerten Graphersetzungsbibliothek RACR Übersicht, Anwendung und Implementierung Daniel Langner [email protected] Editor: Christoff Bürger RACR .NET Entwicklerhandbuch RACR Distribution und Homepage: https://github.com/christoff-buerger/racr Danksagung Ich danke Llewellyn ‘Leppie‘ Pritchard, dem Autor der Scheme-VM IronScheme, ohne welche diese Arbeit niemals hätte entstehen können. Er hatte immer ein offenes Ohr und war stets bereit, sein breites CLI-Wissen zu teilen und bei Problemen mit IronScheme weiterzuhelfen. Vorwort Dieses Entwicklerhandbuch beruht auf dem Großem Beleg von Daniel Langner, welcher unter dem Titel RAG-gesteuerte Graphersetzung in der objektorientierten Programmierung am 17. November 2015 beim Lehrstuhl Softwaretechnologie, Institut für Software- und Multimediatechnik, Technische Universität Dresden, eingereicht wurde. Der Große Beleg wurde von Dipl.-inf. Christoff Bürger und Dipl.-Inf. Johannes Mey, unter Aufsicht von Prof. Dr. rer. nat. habil. Uwe Aßmann, betreut und mit sehr gut abgeschlossen. Inhaltsverzeichnis 1. Einleitung 13 1.1. Aufgabenstellung . 14 1.2. Struktur der Arbeit . 14 2. Konzeptionelle und technische Voraussetzungen 15 2.1. Überblick der RAG-gesteuerten Graphersetzung . 15 2.2. Scheme . 16 2.3. Die RACR Scheme-Bibliothek . 17 2.4. Das .NET-Framework und die Common Language Infrastructure . 18 2.5. IronScheme . -
Doc:Docu.Xml a File.Cs Mcs -Doc:Docu.Xml a File.Cs
Chair of Software Engineering Java and C# in depth Carlo A. Furia, Marco Piccioni, Bertrand Meyer C#: framework overview and in-the-small features Chair of Software Engineering Java and C# in depth Carlo A. Furia, Marco Piccioni, Bertrand Meyer C#: framework overview What’s in a name Internal name of initial project: Cool (C-like Object Oriented Language) . Ruled out by the trademark lawyers Chief C# architect at Microsoft: Anders Hejlsberg . Previously on Turbo Pascal & Delphi Grounded in the .NET platform and CLI (Common Language Infrastructure) “An imitation of Java” . According to Java’s Bill Gosling Version 1.0: 2001 Latest version: 5.0 (.NET Framework 4.5) (6.2013) Java and C# in depth 3 C# platform goals (from ECMA standard) . Simple, general-purpose, object-oriented . Correct and robust . strong type checking, array bounds checking, detecting usage of uninitialized variables, automated memory management, ... Component- and reusability-oriented . Programmer-portable . easy for developers coming from C/C++ and from other .NET languages . No direct competition with C in terms of performance . Introduction of selected functional programming features . Main motivation: dealing with data conveniently Java and C# in depth 4 CLI: Common Language Infrastructure • An open specification describing the executable code and runtime environment forming the .NET framework • Implementations: MS .NET/CLR, MS .NET Compact framework (portable devices and Xbox 360), MS Silverlight (browsers), Mono (cross-platform). Java and C# in depth 5 CIL and Assemblies . C# compilation produces CIL (Common Intermediate Language) code . Instruction set similar to Java bytecode . object-oriented stack-based assembly code . richer type system, real generics vs. -
Wiki - Edit This Page
Wiki - Edit this page Markus Zapke-Gründemann Chaostreff Leipzig 23.3.2004 Was ist ein Wiki? ● Eine Website, die von allen Benutzern bearbeitet werden kann – Einfache Regeln zum Formatieren der Inhalte – Einfaches Anlegen von Links durch spezielle Schreibweise oder Zeichen – Einfaches Erstellen neuer Seiten – Eine Liste mit den letzten Änderungen – Versionskontrolle ● Das älteste öffentliche Wiki ist das „Portland Pattern Repository“ (1995) http://c2.com/cgi/wiki?WelcomeVisitors Wiki Philosophie ● Das Wort „Wiki“ leitet sich vom hawaiianischem Wort wiki wiki ab, was so viel bedeutet wie schnell ● Deshalb steht bei einem Wiki die einfache Bearbeitung der Inhalte im Vordergrund ● Das PhpWiki Team bezieht sich auf die japanische Wabi-Sabi Weltanschauung. Danach sind alle Dinge: – imperfekt – unbeständig – unvollständig ● Einige sehen in Wikis auch die chaotische Organisation des Universums gespiegelt Wiki Syntax ● == Überschrift == ● ''kursiver Text'' ● '''fetter Text''' ● * Listen ** Listen * Listen ● # numerierte Listen ## numerierte Listen # numerierte Listen ● : Text einrücken :: Text einrücken ● http://example.com [http://example.com example.com] ● ||'''Spalte 1'''||'''Spalte 2'''|| ||Text 1||Text 2|| ||||Text über 2 Spalten|| InterWiki Links ● InterWiki Links dienen zum einfachen Verknüpfen verschiedener Wikis ● viele Wikis stellen deshalb eine InterWikiMap bereit InterWikiMap: UseMod http://www.usemod.com/cgi-bin/wiki.pl? Google http://www.google.com/search?q= Wiki Syntax: UseMod:UseModWiki -> http://www.usemod.com/cgi-bin/wiki.pl?UseModWiki -
Critical Point of View: a Wikipedia Reader
w ikipedia pedai p edia p Wiki CRITICAL POINT OF VIEW A Wikipedia Reader 2 CRITICAL POINT OF VIEW A Wikipedia Reader CRITICAL POINT OF VIEW 3 Critical Point of View: A Wikipedia Reader Editors: Geert Lovink and Nathaniel Tkacz Editorial Assistance: Ivy Roberts, Morgan Currie Copy-Editing: Cielo Lutino CRITICAL Design: Katja van Stiphout Cover Image: Ayumi Higuchi POINT OF VIEW Printer: Ten Klei Groep, Amsterdam Publisher: Institute of Network Cultures, Amsterdam 2011 A Wikipedia ISBN: 978-90-78146-13-1 Reader EDITED BY Contact GEERT LOVINK AND Institute of Network Cultures NATHANIEL TKACZ phone: +3120 5951866 INC READER #7 fax: +3120 5951840 email: [email protected] web: http://www.networkcultures.org Order a copy of this book by sending an email to: [email protected] A pdf of this publication can be downloaded freely at: http://www.networkcultures.org/publications Join the Critical Point of View mailing list at: http://www.listcultures.org Supported by: The School for Communication and Design at the Amsterdam University of Applied Sciences (Hogeschool van Amsterdam DMCI), the Centre for Internet and Society (CIS) in Bangalore and the Kusuma Trust. Thanks to Johanna Niesyto (University of Siegen), Nishant Shah and Sunil Abraham (CIS Bangalore) Sabine Niederer and Margreet Riphagen (INC Amsterdam) for their valuable input and editorial support. Thanks to Foundation Democracy and Media, Mondriaan Foundation and the Public Library Amsterdam (Openbare Bibliotheek Amsterdam) for supporting the CPOV events in Bangalore, Amsterdam and Leipzig. (http://networkcultures.org/wpmu/cpov/) Special thanks to all the authors for their contributions and to Cielo Lutino, Morgan Currie and Ivy Roberts for their careful copy-editing. -
Toolkit for Teachers – Technologies Is Supplementary Material for the Toolkit for Teachers
Toolkit for Technologies teachers i www. universitiesofthefuture.eu Partners Maria Teresa Pereira (Project manager) [email protected] Maria Clavert Piotr Palka Rui Moura Frank Russi [email protected] [email protected] [email protected] [email protected] Ricardo Migueis Sanja Murso Wojciech Gackowski Maciej Markowski [email protected] [email protected] [email protected] [email protected] Olivier Schulbaum Francisco Pacheo Pedro Costa Aki Malinen [email protected] [email protected] [email protected] [email protected] ii INDEX 1 INTRODUCTION AND FOREWORD 1 2 CURRENT SITUATION 3 2.1 INDUSTRY 4.0: STATE OF AFFAIRS 3 2.2 TRENDS 3 2.3 NEEDS 4 2.3.1 Addressing modern challenges in information acquisition 4 2.3.2 Supporting collaborative work 4 2.3.3 IT-assisted teaching 4 3 TECHNOLOGIES FOR EDUCATION 4.0 7 3.1 TOOLS SUPPORTING GROUP AND PROJECT WORK 7 3.1.1 Cloud storage services 7 3.1.2 Document Collaboration Tools 9 3.1.3 Documenting projects - Wiki services 11 3.1.4 Collaborative information collection, sharing and organization 13 3.1.5 Project management tools 17 3.1.6 Collaborative Design Tools 21 3.2 E-LEARNING AND BLENDED LEARNING TOOLS 24 3.2.1 Direct communication tools 24 3.2.1.1 Webcasts 24 3.2.1.2 Streaming servers 26 3.2.1.3 Teleconferencing tools 27 3.2.1.4 Webinars 28 3.2.2 Creating e-learning materials 29 3.2.2.1 Creation of educational videos 29 3.2.2.2 Authoring of interactive educational content 32 3.2.3 Learning Management Systems (LMS) 33 4 SUMMARY 36 5 REFERENCES 38 4.1 BIBLIOGRAPHY 38 4.2 NETOGRAPHY 39 iii Introduction and foreword iv 1 Introduction and foreword This toolkit for teachers – technologies is supplementary material for the toolkit for teachers.