1,480 research outputs found
An explicit model for learning to structure and analyze decisions by judges
Legal practitioners and legal scientists need to have knowledge of the general rules that apply in the legal system. This involves both knowledge of the legislation and knowledge of the decisions by judges that function as general rules of law. Law students preparing themselves for the legal profession need to acquire these kinds of knowledge. A student has to have knowledge about where to look for decisions, understand the structure of decisions and learn to determine what makes a decision relevant to the body of applicable rules in the legal system. Legal education primarily aims at acquiring insight in the legal sources, their history and background. This basic knowledge is of great importance; legal problem solving is hardly possible without an understanding of the legal knowledge. To illustrate the use of this knowledge in practice, teachers work through decisions as examples. However, it is difficult, if not impossible, to learn by explanation or by imitation alone. A more effective way to obtain expertise is by actually performing the task, i.e. students should do the exercises, while the teacher provides feedback on their solutions. For effective learning, also the solution process should be monitored and provided with feedback. Furthermore it is desirable for students to be able to ask for help at any time during the process. They should also be able to practice over and over again. An ideal situation would have a teacher available for every student, monitoring the student while practicing and providing support where and whenever necessary. However, this being not practically feasible, the second best option is to offer the student electronic support.
CASE (Case Analysis and Structuring Environment) is an environment where a law student can practice with finding decisions, with structuring its text and with analysing the decision in order to be able to determine in what way it adds to the body of applicable rules in the legal system.
CASE is developed using a principled and structured design approach. A short description of this approach is followed by an analysis of the learning task, the difficulties law students experience and the remedies proposed on the basis of both the task analysis and the stated difficulties. This is followed by a description of architecture, functionality, platform and implementation of CASE and a description of a session with CASE and future work
Image Blending Algorithm with Automatic Mask Generation
In recent years, image blending has gained popularity for its ability to
create visually stunning content. However, the current image blending
algorithms mainly have the following problems: manually creating image blending
masks requires a lot of manpower and material resources; image blending
algorithms cannot effectively solve the problems of brightness distortion and
low resolution. To this end, we propose a new image blending method with
automatic mask generation: it combines semantic object detection and
segmentation with mask generation to achieve deep blended images based on our
proposed new saturation loss and two-stage iteration of the PAN algorithm to
fix brightness distortion and low-resolution issues. Results on publicly
available datasets show that our method outperforms other classical image
blending algorithms on various performance metrics, including PSNR and SSIM.Comment: 14 pages, 8 figure
Automated Game Design Learning
While general game playing is an active field of research, the learning of
game design has tended to be either a secondary goal of such research or it has
been solely the domain of humans. We propose a field of research, Automated
Game Design Learning (AGDL), with the direct purpose of learning game designs
directly through interaction with games in the mode that most people experience
games: via play. We detail existing work that touches the edges of this field,
describe current successful projects in AGDL and the theoretical foundations
that enable them, point to promising applications enabled by AGDL, and discuss
next steps for this exciting area of study. The key moves of AGDL are to use
game programs as the ultimate source of truth about their own design, and to
make these design properties available to other systems and avenues of inquiry.Comment: 8 pages, 2 figures. Accepted for CIG 201
Toward an Understanding of Software Code Cloning as a Development Practice
Code cloning is the practice of duplicating existing source code for use elsewhere within a software system. Within the
research community, conventional wisdom has asserted that code cloning is generally a bad practice, and that code clones should be removed or refactored where possible. While there is significant anecdotal evidence that code cloning can lead to a variety of maintenance headaches --- such as code bloat, duplication of bugs, and inconsistent bug fixing --- there has been little empirical study on the frequency, severity, and costs of code cloning with respect to software maintenance.
This dissertation seeks to improve our understanding of code cloning as a common development practice through the study of several widely adopted, medium-sized open source software systems. We have explored the motivations behind the use of code cloning as a development practice by addressing several fundamental questions: For what reasons do developers choose to clone code? Are there distinct identifiable patterns of cloning? What are the possible short- and long-term term
risks of cloning? What management strategies are appropriate for the maintenance and evolution of clones? When is
the ``cure'' (refactoring) likely to cause more harm than the ``disease'' (cloning)?
There are three major research contributions of this dissertation. First, we propose a set of requirements for an effective clone analysis tool based on our experiences in clone analysis of large software systems. These requirements are demonstrated in an example implementation which we used to perform the case studies prior to and included in this thesis. Second, we present an annotated catalogue of common code cloning patterns that we observed in our studies. Third, we present an empirical study of the relative frequencies and likely harmfulness of instances of these cloning patterns as observed in two medium-sized open source software systems, the Apache web server and the Gnumeric spreadsheet application. In summary, it appears that code cloning is often used as a principled engineering technique for a variety of reasons, and that as many as 71% of the clones in our study could be considered to have a positive impact on the maintainability of the software system. These results suggest that the conventional wisdom that code clones are generally harmful to the quality of a software system has been proven wrong
The importance of good coding practices for data scientists
Many data science students and practitioners are reluctant to adopt good
coding practices as long as the code "works". However, code standards are an
important part of modern data science practice, and they play an essential role
in the development of "data acumen". Good coding practices lead to more
reliable code and often save more time than they cost, making them important
even for beginners. We believe that principled coding practices are vital for
statistics and data science. To install these practices within academic
programs, it is important for instructors and programs to begin establishing
these practices early, to reinforce them often, and to hold themselves to a
higher standard while guiding students. We describe key aspects of coding
practices (both good and bad), focusing primarily on the R language, though
similar standards are applicable to other software environments. The lessons
are organized into a top ten list
- âŠ