Miracle-dz/UniFAR-FTUs huggingface dataset:
Gender Differences in Introductory Programming: Comparing MOOCs and Local Courses

We analyzed three introductory programming MOOCs and four introductory programming courses offered locally in a Finnish university. The course has been offered in all instances with roughly the same content, barring adjustments based on course feedback. We sought to understand how gender interacts with participating in the course in both instances. In particular, we looked at the differences in persistence, confidence, interest in CS, prior experience, and performance between men and women. Overall, we found that men have more prior experience in both instances and have a higher interest in a CS degree. Furthermore, men perform slightly better on the MOOC while there was no significant difference in performance when it came to gender in the local instance. Aligned with prior research, we found a considerable gap in confidence between male and female students in both instances. At the same time, while women are still underrepresented in CS, we observe a considerable increase in women attending the MOOC. Unfortunately, women are also more likely to drop out early on in the MOOC than men.
Pro-Eating Disorders and Pro-Recovery Communities on Reddit: Text and Network Comparative Analyses

Online eating disorders communities play a major role in facilitating the communication among users suffering from these illnesses. Most studies have taken interest in the content of these communities, without acknowledging the relationship between the content and the structure of their networks of communication. We present a multi-faceted study where we analyze the content and the network of the pro-eating disorders (pro-ED) community and the pro-recovery community on Reddit by applying an approach that combines topic modeling, social network analysis and sentiment analysis for a better comprehension of these communities on both content and network levels. Through a comparative analysis, we define the main topics both communities address based on their users' content, then we describe the communication patterns of these communities, which leads us to analyze the sentiments of the users with the most connections to other users in addition to the ones that are common between both communities.
Flexible Community Search Algorithm on Attributed Graphs

How can the most appropriate community be found given an attributed graph and a user-specified query node? The community search algorithm is currently an essential graph data management tool to find a community suited to a user-specified query node. Although community search algorithms are useful in various web-based applications and services, they have trouble handling attributed graphs due to the strict topological constraints of traditional algorithms. In this paper, we propose an accurate community search algorithm for attributed graphs. To overcome current limitations, we define a new attribute-driven community search problem class called the Flexible Attributed Truss Community (F-ATC). The advantage of the F-ATC problem is that it relaxes topological constraints, allowing diverse communities to be explored. Consequently, the community search accuracy is enhanced compared to traditional community search algorithms. Additionally, we present a novel heuristic algorithm to solve the F-ATC problem. This effective algorithm detects more accurate communities from attributed graphs than the traditional algorithms. Finally, extensive experiments are conducted using real-world attributed graphs to demonstrate that our approach achieves a higher accuracy than the state-of-the-art method.
A Robust and Scalable Pipeline for the Real-time Processing and Analysis of Massive 3D Spatial Streams

With the increase in the use of 3D scanner to sample the earth surface, there is a surge in the availability of 3D spatial data. 3D spatial data contains a wealth of information and can be of potential use if integrated, processed and analyzed in real-time. The 3D spatial data is generated as continuous data stream, however due to its size, velocity and inherent noise, it is processed offline. Many applications require real-time processing and analysis of spatial stream, for-instance, forest fire management, real-time road traffic analysis, disaster engulfed areas monitoring, etc., however they suffer from slow offline processing of traditional systems. This paper presents and demonstrates a robust and scalable pipeline for the real-time processing and analysis of 3D spatial streams. An experimental evaluation is also presented to prove the effectiveness of the proposed framework.
Scalable top-k retrieval with Sparta

Many big data processing applications rely on a top-k retrieval building block, which selects (or approximates) the k highest-scoring data items based on an aggregation of features. In web search, for instance, a document's score is the sum of its scores for all query terms. Top-k retrieval is often used to sift through massive data and identify a smaller subset of it for further analysis. Because it filters out the bulk of the data, it often constitutes the main performance bottleneck. Beyond the rise in data sizes, today's data processing scenarios also increase the number of features contributing to the overall score. In web search, for example, verbose queries are becoming mainstream, while state-of-the-art algorithms fail to process long queries in real-time. We present Sparta, a practical parallel algorithm that exploits multi-core hardware for fast (approximate) top-k retrieval. Thanks to lightweight coordination and judicious context sharing among threads, Sparta scales both in the number of features and in the searched index size. In our web search case study on 50M documents, Sparta processes 12-term queries more than twice as fast as the state-of-the-art. On a tenfold bigger index, Sparta processes queries at the same speed, whereas the average latency of existing algorithms soars to be an order-of-magnitude larger than Sparta's.
COIDS: A Clock Offset Based Intrusion Detection System for Controller Area Networks

Controller Area Network (CAN) is an in-vehicle communication protocol which provides an efficient and reliable communication link between Electronic Control Units (ECUs) in real-time. Recent studies have shown that attackers can take remote control of the targeted car by exploiting the vulnerabilities of the CAN protocol. Motivated by this fact, we propose Clock Offset-based Intrusion Detection System (COIDS) to monitor in-vehicle network and detect any intrusion. Precisely, we first measure and then exploit the clock offset of transmitter ECU's clock for fingerprinting ECU. We next leverage the derived fingerprints to construct a baseline of ECU's normal clock behaviour using an active learning technique. Based on the baseline of normal behaviour, we use Cumulative Sum method to detect any abnormal deviation in clock offset. Particularly, if the deviation in clock offset exceeds an unexpected positive or negative value, COIDS declares this change as an intrusion. Further, we use sequential change-point detection technique to determine the exact time of intrusion. We perform exhaustive experiments on real-world publicly available datasets primarily to assess the effectiveness of COIDS against three most potential attacks on CAN, i.e., DoS, impersonation and fuzzy attacks. The results show that COIDS is highly effective in defending all these three attacks. Further, the results show that COIDS considerably faster in detecting intrusion compared to a state-of-the-art solution.
PLDSD: Personalized Linked Data Semantic Distance for LOD-Based Recommender Systems

A vast amount of data that can be easily read by machines have been published in freely accessible and interconnected datasets, creating the so-called Linked Open Data cloud. This phenomenon has opened opportunities for the development of semantic applications, including recommender systems. In this paper, we propose Personalized Linked Data Semantic Distance (PLDSD), a novel similarity measure for linked data that personalizes the RDF graph by adding weights to the edges, based on previous user's choices. Thus, our approach has the purpose of minimizing the sparsity problem by ranking the best features for a particular user, and also, of solving the item cold-start problem, since the feature ranking task is based on features shared between old items and the new item. We evaluate PLDSD in the context of a LOD-based Recommender System using mixed data from DBpedia and MovieLens, and the experimental results indicate better accuracy of recommendations compared to a non-personalized baseline similarity method.
Driving Lane Detection on Smartphones using Deep Neural Networks

Current smartphone-based navigation applications fail to provide lane-level information due to poor GPS accuracy. Detecting and tracking a vehicle’s lane position on the road assists in lane-level navigation. For instance, it would be important to know whether a vehicle is in the correct lane for safely making a turn, or whether the vehicle’s speed is compliant with a lane-specific speed limit. Recent efforts have used road network information and inertial sensors to estimate lane position. While inertial sensors can detect lane shifts over short windows, it would suffer from error accumulation over time. In this article, we present DeepLane, a system that leverages the back camera of a windshield-mounted smartphone to provide an accurate estimate of the vehicle’s current lane. We employ a deep learning--based technique to classify the vehicle’s lane position. DeepLane does not depend on any infrastructure support such as lane markings and works even when there are no lane markings, a characteristic of many roads in developing regions. We perform extensive evaluation of DeepLane on real-world datasets collected in developed and developing regions. DeepLane can detect a vehicle’s lane position with an accuracy of over 90%, and we have implemented DeepLane as an Android app.
Vectorization-aware loop unrolling with seed forwarding

Loop unrolling is a widely adopted loop transformation, commonly used for enabling subsequent optimizations. Straight-line-code vectorization (SLP) is an optimization that benefits from unrolling. SLP converts isomorphic instruction sequences into vector code. Since unrolling generates repeatead isomorphic instruction sequences, it enables SLP to vectorize more code. However, most production compilers apply these optimizations independently and uncoordinated. Unrolling is commonly tuned to avoid code bloat, not maximizing the potential for vectorization, leading to missed vectorization opportunities. We are proposing VALU, a novel loop unrolling heuristic that takes vectorization into account when making unrolling decisions. Our heuristic is powered by an analysis that estimates the potential benefit of SLP vectorization for the unrolled version of the loop. Our heuristic then selects the unrolling factor that maximizes the utilization of the vector units. VALU also forwards the vectorizable code to SLP, allowing it to bypass its greedy search for vectorizable seed instructions, exposing more vectorization opportunities. Our evaluation on a production compiler shows that VALU uncovers many vectorization opportunities that were missed by the default loop unroller and vectorizers. This results in more vectorized code and significant performance speedups for 17 of the kernels of the TSVC benchmarks suite, reaching up to 2× speedup over the already highly optimized -O3. Our evaluation on full benchmarks from FreeBench and MiBench shows that VALU results in a geo-mean speedup of 1.06×.
Fast RankCIus Algorithm via Dynamic Rank Score Tracking on Bi-type Information Networks

Given a bi-type information network, which is an extended model of well-known bipartite graphs, how can clusters be efficiently found in graphs? Graph clustering is now a fundamental tool to understand overviews from graph-structured data. The RankClus framework accurately performs clustering for bi-type information networks using ranking-based graph clustering techniques. It integrates a graph ranking algorithms such as PageRank or HITS into graph clustering procedures to improve the clustering quality. However, this integration incurs a high computational cost to handle large bi-type information networks since RankClus repeatedly computes the ranking algorithm for all nodes and edges until the clustering procedure converges. To overcome this runtime limitation, herein we present a novel RankClus algorithm that reduces the running time for large bi-type information networks. Our proposed method employs dynamic graph processing techniques into the ranking procedures included in RankClus. By dynamically updating ranking results, our proposal reduces the number of computed nodes and edges during repeated ranking procedures. We experimentally verify using real-world datasets that our proposed method successfully reduces the running time while maintaining the clustering quality of RankClus.
Combining a Gamified Civic Engagement Platform with a Digital Game in a Loosely Way to Increase Retention

In this article we discuss an innovative approach to tackle the retention problem in civic engagement systems, more in particular in the context of care taking of elderly. The proposed solution is to complement a gamified civic engagement platform with an entertainment game but in such a way that the two are only loosely coupled. The civic engagement platform is a location-based card environment that allows to connect people who might be in need of assistance (i.e. elderly) with people willing to spend their time to help (i.e. volunteers). By helping people the volunteers collect cards, which can be used in the game to play. Special is that we do not expect that the volunteers will be the one playing the game. On the contrary, the aim is to create a self-feeding network between two groups of users: on the one hand the volunteers and on the other hand gamers. We hope that the gamers will stimulate the volunteers to collect cards and that in this way we can retain the volunteers for longer periods. Currently, the approach is being implemented for the case of assisting elderly, but the principle is also applicable in other domains of civic engagement. The paper discusses the research goals and problems, the research approach, as well as the current state and future work.
SearchCom: Vehicular Cloud-based Secure and Energy-Efficient Communication and Searching System for Smart Transportation

The cutting-edge technologies have improved the journey of vehicle users on the road using different vehicular-based structures (vehicular ad-hoc networks (VANETs), vehicular cloud computing (VCC), and Internet of Vehicles (IoV)). Vehicles generally transmit different road-side data (e.g., traffic, details of nearby vehicles, emergency/environment, location, etc.) from/to another end in a public environment. Hence, three key challenges on data are as follows; (1) secure and effective data storage in the vehicular cloud (VC) (2) efficient data extraction from the VC and (3) reliable data transmission between two entities. Some general methods are to search/store data from/in the cloud, but these techniques are only for data storage and extraction. Next, various communication schemes are proposed for VANETs, VCC, and IoV, but they need high computational resources, and these schemes are vulnerable to multiple security attacks. We find that there is no system, which provides all these data operations (storage, searching, and communication) for vehicle users. In this paper, we propose a dependable system (named as SearchCom) for vehicle applicants to overcome above-mentioned challenges and provide operational facility. The SearchCom is analyzed to verify its security strengths against various security attacks and its performance results in execution time, memory requirement, communication overhead, searching, and energy consumption.
Scratch Encore: The Design and Pilot of a Culturally-Relevant Intermediate Scratch Curriculum

While several introductory computer science curricula exist for children in K-8, there are few options that go beyond sequence, loops, and basic conditionals. The goal of this project is to not only fill this gap with a high-quality curriculum supported by complete instructional materials, but to also do so with an equity-balanced curriculum. That is, a curriculum that values advancing equity equally with student learning outcomes. In this paper, we introduce barriers to equity in public school classrooms, pedagogical approaches to culturally-relevant curricula, and how our Scratch Encore curriculum is designed to support equity-balanced learning. Finally, we present results of our pilot year, including early evidence of students taking advantage of the culturally-relevant design aspects.
Forecasting Dengue Incidence with the Chi-squared Automatic Interaction Detection Technique

This paper presents the data-driven approach to forecast number of dengue infection in the two most populated provinces of Thailand: Bangkok and Nakhon Ratchasima. Our forecasting technique is the chi-squared automatic interaction detection (CHAID), which is a machine learning approach that adopts decision tree as a main data structure for building a model and applies a chi-square computation for node splitting. The CHAID algorithm is in a group of multivariate data analysis in that it takes more than one attributes to build a model. The input data used in our model building phase are from the remote sensing indices, oceanic sensors, and ground sources. Remote sensing index data are obtained from the National Oceanic and Atmospheric Administration (NOAA) of the United States. These indices are used as representatives to assess temperature, humidity and brightness in the atmosphere as well as the greenness conditions of plants over the specific Earth surface areas. The oceanic sensor data are ONI index computed by NOAA to announce El Nino or La Nina events, which are assumed to affect the growth rate of mosquito larva. From the model assessment, we found that the multivariate CHAID models in both provinces are more accurate than the univariate autoregressive integrated moving average (ARIMA) models that are currently used by the Thai public health practitioners. We also compare predictive performance of CHAID models against ARIMA and those obtained from other machine learning techniques. The CHAID models outperform the others. The induced CHAID model is thus considered efficient enough to be applied for predicting number of dengue infected patients.
StateMover: Combining Simulation and Hardware Execution for Efficient FPGA Debugging

Debugging consumes a large portion of FPGA design time, and with the growing complexity of traditional FPGA systems and the additional verification challenges posed by multiple FPGAs interacting within data centers, debugging productivity is becoming even more important. Current debugging flows either depend on simulation, which is extremely slow but has full visibility, or on hardware execution, which is fast but provides very limited control and visibility. In this paper, we present StateMover, a checkpointing-based debugging framework for FPGAs, which can move design state back and forth between an FPGA and a simulator in a seamless way. StateMover leverages the speed of hardware execution and the full visibility and ease-of-use of a simulator. This enables a novel debugging flow that has a software-like combination of speed with full observability and controllability. StateMover adds minimal hardware to the design to safely stop the design under test so that its state can be extracted or modified in an orderly manner. The added hardware has no timing overhead and a very small area overhead. StateMover currently supports Xilinx UltraScale devices, and its underlying techniques and tools can be ported to other device families that support configuration readback. Moving the state from/to an FPGA to/from a simulator can be performed in a few seconds for large FPGAs, enabling a new debugging flow.
Project Scoring for Program Evaluation and Teacher Professional Development

Evaluating student learning in K-12 computer science programs is challenging due to the limited number of validated assessments, especially below the high school level. Because computer science is often taught as an engineering-oriented discipline in K-12, it seems natural to use students' programming projects as evidence of student learning. However, this approach is time-consuming and can overestimate what students understand. In this paper, we share our experience with using students' programming projects as a tool for evaluating a middle school computer science program at San Francisco Unified School District. The scoring and analysis of programming projects did generate useful insights about the nature of student learning in the program. More importantly, we found that the process of co-developing a scoring rubric and scoring projects alongside CS classroom teachers generated rich discussions and knowledge-sharing about the current state of the district's CS program, its values, and its long-term goals.
Non-blocking interpolation search trees with doubly-logarithmic running time

Balanced search trees typically use key comparisons to guide their operations, and achieve logarithmic running time. By relying on numerical properties of the keys, interpolation search achieves lower search complexity and better performance. Although interpolation-based data structures were investigated in the past, their non-blocking concurrent variants have received very little attention so far. In this paper, we propose the first non-blocking implementation of the classic interpolation search tree (IST) data structure. For arbitrary key distributions, the data structure ensures worst-case O(log n + p) amortized time for search, insertion and deletion traversals. When the input key distributions are smooth, lookups run in expected O(log log n + p) time, and insertion and deletion run in expected amortized O(log log n + p) time, where p is a bound on the number of threads. To improve the scalability of concurrent insertion and deletion, we propose a novel parallel rebuilding technique, which should be of independent interest. We evaluate whether the theoretical improvements translate to practice by implementing the concurrent interpolation search tree, and benchmarking it on uniform and nonuniform key distributions, for dataset sizes in the millions to billions of keys. Relative to the state-of-the-art concurrent data structures, the concurrent interpolation search tree achieves performance improvements of up to 15% under high update rates, and of up to 50% under moderate update rates. Further, ISTs exhibit up to 2X less cache-misses, and consume 1.2 -- 2.6X less memory compared to the next best alternative on typical dataset sizes. We find that the results are surprisingly robust to distributional skew, which suggests that our data structure can be a promising alternative to classic concurrent search structures.
A Hierarchical Classifier for Detecting Metro-Journey Activities in Data Sampled at Low Frequency

This paper aims to build a novel classification model that can distinguish the typical motion activities that a traveler would perform in a metro-journey. Following motion activities are focused in this work: waiting in a queue, traveling in a metro train, climbing-up, climbing-down, walking and stationary. We aim to build a classifier which can work on data sampled from smartphone sensors at a low frequency (4Hz). However, it is non-trivial to do so as the mentioned activities are not easily separable in data sampled at low frequency. Current works focus on data sampled at high frequency (40Hz). Also, they don't consider metro-journey specific activities such as queue. Our proposed model focuses on all the metro-journey specific activities while using data sampled at low frequency (4Hz). Experimental evaluation (datasets collected in Delhi Metro-rail network) indicate superior performance of our classifier (mean accuracy 92%) over the related work (mean accuracy 70%).