“While exchange student at Uppsala University I had the pleasant surprise to meet Amanj as a classmate in two courses: Object-Oriented Design and Test Methodology. Amanj is a quick learner and provided helpful tips on coursework even though we worked in different teams. As a friend, Amanj helped me to adopt Open-Source software in favour of pirated software or Microsoft. Amanj will successfully manage any task that he's being assigned and take it to successful and excellent completion. Furthermore, his quiet but powerful persuasion skills definitely places him as a promoter of Open-Source software and true anti-piracy advocate.”
About
Activity
-
Hi network I'm hiring (preferably in Montreal) a fairly unique senior role: Primarily project manager, but with heavy emphasis on shaping global…
Hi network I'm hiring (preferably in Montreal) a fairly unique senior role: Primarily project manager, but with heavy emphasis on shaping global…
Liked by Amanj Sherwany
Experience & Education
Licenses & Certifications
-
Academic Rank: Assistant Lecturer
Salahaddin University
Issued -
UPMARC Summer School 2011
UPMARC Research group at Uppsala University
Issued
Volunteer Experience
-
Volunteer at Speakers Organizing Team
TEDxErbil
- 9 months
Science and Technology
I volunteered for arranging the first ever TEDxErbil event, I worked as a translator from English to Kurdish and vice versa.
http://tedxerbil.com -
Mentor
ZuriHack
- Present 10 years 11 months
Science and Technology
I was a mentor in ZuriHack '15 which took place at Google. ZuriHack is an annual Haskell focused hackathon.
Publications
-
A Refactoring Library for Scala Compiler Extensions
Compiler Construction Conference '15
Compiler plugins enable languages to be extended with new functionality by adding compiler passes that perform additional static checking, code generation, or code transformations. However, compiler plugins are often difficult to build. A plugin can perform arbitrary code transformations, easily allowing a developer to generate incorrect code. Moreover, the base compiler assumes many complex, sometimes undocumented invariants, requiring plugin developers to acquire intimate knowledge of the…
Compiler plugins enable languages to be extended with new functionality by adding compiler passes that perform additional static checking, code generation, or code transformations. However, compiler plugins are often difficult to build. A plugin can perform arbitrary code transformations, easily allowing a developer to generate incorrect code. Moreover, the base compiler assumes many complex, sometimes undocumented invariants, requiring plugin developers to acquire intimate knowledge of the design and implementation of the compiler. To address these issues in the context of the Scala compiler plugin framework, we introduce Piuma. Piuma is a library that provides, first, an API to perform many common refactoring tasks needed by plugin writers, and, second, a DSL to eliminate much of the boilerplate code required for plugin development. We demonstrate the usefulness of our library by implementing five diverse compiler plugins. We show that, using Piuma, plugins require less code and are easier to understand than plugins developed using the base Scala compiler plugin API.
Other authorsSee publication -
Mobile vs. Desktop Programming Projects: The Effect on students
PROMOTO '14
Programming projects are a common component of computer science curricula. In this paper we investigate how the decision of using a mobile and touch versus a desktop platform affected students. We ran two sets of programming projects, one developing desktop applications, the other developing mobile apps. Several months after the conclusion of the projects, we interviewed the students about their experiences. We found that our initial expectations regarding an increased student motivation were…
Programming projects are a common component of computer science curricula. In this paper we investigate how the decision of using a mobile and touch versus a desktop platform affected students. We ran two sets of programming projects, one developing desktop applications, the other developing mobile apps. Several months after the conclusion of the projects, we interviewed the students about their experiences. We found that our initial expectations regarding an increased student motivation were not completely met. We discuss the specific issues we uncovered, and the lessons we learned.
Other authorsSee publication
Languages
-
Kurdish
Native or bilingual proficiency
-
English
Full professional proficiency
-
Arabic
Professional working proficiency
-
Italian
Limited working proficiency
-
French
Elementary proficiency
Recommendations received
-
LinkedIn User
1 person has recommended Amanj
Join now to viewOther similar profiles
Explore collaborative articles
We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.
Explore More