Explored whether a general purpose search engine like Google is an optimal choice for code-related searches.
Code Intent Analysis: An automated technique to classify search queries to code vs. non-code leveraging Stack Overflow tags. A code score is calculated for each query based on how many stack-overflow tokens are present in it. A higher code score indicates the query is more likely to be code related.
REST API vs gRPC, which one should you use in breaking a monolith [Dev conf 2...Vladimir Dejanovic
You heard of "new thing" called gRPC and promises that it will solve all issues for you, so now you are not sure if you should use it for breaking up your monolith to Microservices. If it is good for Google it should be good for you also right?
On the other hand, you have been using REST API's for some time now, at least as a consumer, so maybe this would be better approach in Microservices waters, or would it?
Which one to chose and which one will fit your use case better?
Join me in this talk were I will try to explain both approaches, good and bad. I will give some points and tips, which will help you in understanding better which one will be better for you. By doing this I will also share some best practices for both approaches
With the constant increase of availability of processing power comes the need for longer passwords and hence the need for usage of passphrases in order to remember them. But are passphrases really safe? This session will explain how to crack passphrases up to 20 characters long, where normal password attacks most often fail, in a reasonable timespan using a normal gaming PC and a Markov process.
(Source: RSA USA 2016-San Francisco)
Who Should Review My Code? A file-location based code-reviewer recommendation approach for modern code review.
This research study is presented at the 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER2015)
Find more information and preprint at patanamon.com
Revisiting Code Ownership and Its Relationship with Software Quality in the S...The University of Adelaide
This work was presented at The 38th International Conference on Software Engineering (ICSE2016).
Abstract: Code ownership establishes a chain of responsibility for modules in large software systems. Although prior work uncovers a link between code ownership heuristics and software quality, these heuristics rely solely on the authorship of code changes. In addition to authoring code changes, developers also make important contributions to a module by reviewing code changes. Indeed, recent work shows that reviewers are highly active in modern code review processes, often suggesting alternative solutions or providing updates to the code changes. In this paper, we complement traditional code ownership heuristics using code review activity. Through a case study of six releases of the large Qt and OpenStack systems, we find that: (1) 67%-86% of developers did not author any code changes for a module, but still actively contributed by reviewing 21%-39% of the code changes, (2) code ownership heuristics that are aware of reviewing activity share a relationship with software quality, and (3) the proportion of reviewers without expertise shares a strong, increasing relationship with the likelihood of having post-release defects. Our results suggest that reviewing activity captures an important aspect of code ownership, and should be included in approximations of it in future studies.
REST API vs gRPC, which one should you use in breaking a monolith [Dev conf 2...Vladimir Dejanovic
You heard of "new thing" called gRPC and promises that it will solve all issues for you, so now you are not sure if you should use it for breaking up your monolith to Microservices. If it is good for Google it should be good for you also right?
On the other hand, you have been using REST API's for some time now, at least as a consumer, so maybe this would be better approach in Microservices waters, or would it?
Which one to chose and which one will fit your use case better?
Join me in this talk were I will try to explain both approaches, good and bad. I will give some points and tips, which will help you in understanding better which one will be better for you. By doing this I will also share some best practices for both approaches
With the constant increase of availability of processing power comes the need for longer passwords and hence the need for usage of passphrases in order to remember them. But are passphrases really safe? This session will explain how to crack passphrases up to 20 characters long, where normal password attacks most often fail, in a reasonable timespan using a normal gaming PC and a Markov process.
(Source: RSA USA 2016-San Francisco)
Who Should Review My Code? A file-location based code-reviewer recommendation approach for modern code review.
This research study is presented at the 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER2015)
Find more information and preprint at patanamon.com
Revisiting Code Ownership and Its Relationship with Software Quality in the S...The University of Adelaide
This work was presented at The 38th International Conference on Software Engineering (ICSE2016).
Abstract: Code ownership establishes a chain of responsibility for modules in large software systems. Although prior work uncovers a link between code ownership heuristics and software quality, these heuristics rely solely on the authorship of code changes. In addition to authoring code changes, developers also make important contributions to a module by reviewing code changes. Indeed, recent work shows that reviewers are highly active in modern code review processes, often suggesting alternative solutions or providing updates to the code changes. In this paper, we complement traditional code ownership heuristics using code review activity. Through a case study of six releases of the large Qt and OpenStack systems, we find that: (1) 67%-86% of developers did not author any code changes for a module, but still actively contributed by reviewing 21%-39% of the code changes, (2) code ownership heuristics that are aware of reviewing activity share a relationship with software quality, and (3) the proportion of reviewers without expertise shares a strong, increasing relationship with the likelihood of having post-release defects. Our results suggest that reviewing activity captures an important aspect of code ownership, and should be included in approximations of it in future studies.
Análisis de las novedades del Elastic StackElasticsearch
Descubre las características disponibles con demostraciones: la replicación entre clústeres, los índices bloqueados de Elasticsearch, los espacios de Kibana y los datos de integraciones en Beats y Logstash.
Descubre las características disponibles con demostraciones: la replicación entre clústeres, los índices bloqueados de Elasticsearch, los espacios de Kibana y los datos de integraciones en Beats y Logstash.
Back to Basics Spanish Webinar 3 - Introducción a los replica setsMongoDB
Cómo crear un clúster de producción
Cómo crear un replica set
Cómo MongoDB gestiona la persistencia de los datos y cómo un conjunto de réplicas se recupera automáticamente de todo tipo de fallos
GraphQL is query language for APIs, but what are the advantages and how would one implement such in their microservices/APIs. In this session, I will go through the basics of GraphQL, different aspects of GraphQL and architecture of such APIs. How 4 different ways we can implement GraphQL for a Springboot microservice/API.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
Análisis de las novedades del Elastic StackElasticsearch
Descubre las características disponibles con demostraciones: la replicación entre clústeres, los índices bloqueados de Elasticsearch, los espacios de Kibana y los datos de integraciones en Beats y Logstash.
Descubre las características disponibles con demostraciones: la replicación entre clústeres, los índices bloqueados de Elasticsearch, los espacios de Kibana y los datos de integraciones en Beats y Logstash.
Back to Basics Spanish Webinar 3 - Introducción a los replica setsMongoDB
Cómo crear un clúster de producción
Cómo crear un replica set
Cómo MongoDB gestiona la persistencia de los datos y cómo un conjunto de réplicas se recupera automáticamente de todo tipo de fallos
GraphQL is query language for APIs, but what are the advantages and how would one implement such in their microservices/APIs. In this session, I will go through the basics of GraphQL, different aspects of GraphQL and architecture of such APIs. How 4 different ways we can implement GraphQL for a Springboot microservice/API.
Similar to Evaluating How Developers Use General-Purpose Web-Search for Code Retrieval (14)
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
Safalta Digital marketing institute in Noida, provide complete applications that encompass a huge range of virtual advertising and marketing additives, which includes search engine optimization, virtual communication advertising, pay-per-click on marketing, content material advertising, internet analytics, and greater. These university courses are designed for students who possess a comprehensive understanding of virtual marketing strategies and attributes.Safalta Digital Marketing Institute in Noida is a first choice for young individuals or students who are looking to start their careers in the field of digital advertising. The institute gives specialized courses designed and certification.
for beginners, providing thorough training in areas such as SEO, digital communication marketing, and PPC training in Noida. After finishing the program, students receive the certifications recognised by top different universitie, setting a strong foundation for a successful career in digital marketing.
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Evaluating How Developers Use General-Purpose Web-Search for Code Retrieval
1. Evaluating How Developers Use
General-Purpose Web-Search for
Code Retrieval
Date: May 29, 2018
1
Md Masudur Rahman, Jed Barson, Sydney Paul, Joshua Kayan, Federico Andres Lois,
Sebastian Fernandez Quezada, Christopher Parnin, Kathryn T. Stolee, Baishakhi Ray
7. 7
string to time using java
Search Log
string to time using java
string to time
8. 8
string to time using java
Search Log
string to time using java
string to time
9. 9
string to time using java
DateTime
Search Log
string to time using java
string to time
10. 10
date string to DateTime using java
string to time using java
string to time
Search Log
11. 11
date string to DateTime using java
Search Log
string to time using java
date string to DateTime using java
string to time
12. 12
date string to DateTime using java
Joda Time
library
Search Log
string to time using java
date string to DateTime using java
string to time
13. 13
date string to DateTime using Joda Time library
string to time using java
date string to DateTime using java
string to time
Search Log
14. 14
date string to DateTime using Joda Time library
Search Log
string to time using java
date string to DateTime using java
date string to DateTime using Joda…
string to time
17. 17
world cup fixtures
Search Log
string to time using java
date string to DateTime using java
date string to DateTime using Joda …
string to time
18. 18
world cup fixtures
string to time using java
date string to DateTime using java
date string to DateTime using Joda …
world cup fixtures
string to time
19. 19
place to visit in gothenburg
Search Log
string to time using java
date string to DateTime using java
date string to DateTime using Joda …
world cup fixtures
string to time
20. 20
Search Log
string to time using java
date string to DateTime using java
date string to DateTime using Joda …
world cup fixtures
place to visit in gothenburg
string to time
place to visit in gothenburg
21. Code Query
Code
Query
string to time
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library 21
22. Search Task
Code
Query
string to time
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library 22
Convert a date string to a DateTime object
using Joda Time library
Search Task
23. Code vs Non-code
Code Non-Code
Query
world cup fixtures
place to visit in gothenburg
hotel in gothenburg
23
Query
string to time
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
24. General Purpose Search Engine for
Code Retrieval
Code Non-Code
Query
world cup fixtures
place to visit in gothenburg
hotel in gothenburg
24
Query
string to time
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
25. Research Goal
Code Non-Code
Query
world cup fixtures
place to visit in gothenburg
hotel in gothenburg
25
๏ Query characteristics
๏ User behaviorQuery
string to time
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
26. Dataset
26
Query Search Log
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
place to visit in gothenburg
string to time
Users: 310 (mostly developer)
Consist of code and non-code queries
Total query: 150K
Chrome plugin
hotel in gothenburg
27. Dataset
27
Query Search Log
?
No label
Code or Non-code
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
place to visit in gothenburg
string to time
hotel in gothenburg
28. Dataset
28
Query Search Log
?
No label
Code or Non-code
Query Classifier
string to time using java
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
place to visit in gothenburg
string to time
hotel in gothenburg
32. Code Intent Analysis
32
Token Code Intent
S = set of code related tags
n = popularity of a tag
Query: javascript function to get mp3 play length CodeScore
17 7 0 6 5 8 3 ?
33. Code Intent Analysis
33
Query: javascript function to get mp3 play length CodeScore
17 7 0 6 5 8 3 46
Token Code Intent Query Code Intent
34. Query Code Score
34
Query Code Score
string to time 12
string to time using java 20
date string to DateTime using java 22.5
world cup fixtures 0
messi curly goal 2.6
place to visit in gothenburg 0
35. Query Code Score
35
Query Code Score Label
string to time 12 ?
string to time using java 20 ?
date string to DateTime using java 22.5 ?
world cup fixtures 0 ?
messi curly goal 2.6 ?
place to visit in gothenburg 0 ?
36. Query Code Score
36
Query Code Score Label
string to time 12 ?
string to time using java 20 ?
date string to DateTime using java 22.5 ?
world cup fixtures 0 ?
messi curly goal 2.6 ?
place to visit in gothenburg 0 ?
Classifier Evaluation
Precision: 87%
Recall: 86%
F1-score: 87%
Threshold = 10
Manually annotated 380
queries
37. Query Code Score
37
Query Code Score Label
string to time 12 Code
string to time using java 20 Code
date string to DateTime using java 22.5 Code
world cup fixtures 0 Non-code
messi curly goal 2.6 Non-code
place to visit in gothenburg 0 Non-code
Classifier Evaluation
Precision: 87%
Recall: 86%
F1-score: 87%
Threshold = 10
Manually annotated 380
queries
38. Query Code Score
38
Query Code Score Label
string to time 12 Code
string to time using java 20 Code
date string to DateTime using java 22.5 Code
world cup fixtures 0 Non-code
messi curly goal 2.6 Non-code
place to visit in gothenburg 0 Non-code
Code : 89K (59%)
Non-code : 61K (41%)
Annotated Data
Classifier Evaluation
Precision: 87%
Recall: 86%
F1-score: 87%
Threshold = 10
Manually annotated 380
queries
39. Research Questions
39
Query
Characteristics
User Behavior
RQ1. How do query characteristics differ for code and
non-code queries?
RQ2. How do search behaviors vary for code and
non-code related queries?
RQ3. How do task sessions vary for code and non-
code related search tasks?
41. RQ1: Query Characteristics
41
Code queries often longer
(more tokens) than non-code
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
messi curly goal
hotel in gothenburgjavascript function to get mp3 play length
Code Non-code
42. RQ1: Query Characteristics
42
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
messi curly goal
hotel in gothenburgjavascript function to get mp3 play length
Code Non-code
43. RQ1: Query Characteristics
43
date string to DateTime using java
date string to DateTime using Joda Time library
world cup fixtures
messi curly goal
hotel in gothenburgjavascript function to get mp3 play length
Code Non-code
45. 45
RQ2: Query Search Behavior
Query # term added # term deleted
Code
string to time - -
string to time using java 2 -
date string to DateTime using
Joda Time library
4 2
Non-code
hotel in gothenburg - -
best hotel in gothenburg 1 -
46. 46
RQ2: Query Search Behavior
Query # term added # term deleted
Code
string to time - -
string to time using java 2 -
date string to DateTime using
Joda Time library
4 2
Non-code
hotel in gothenburg - -
best hotel in gothenburg 1 -
Edited query
47. 47
User often add/delete more terms
(avg. 2) to a code compared to non-
code (avg. 1)
RQ2: Query Search Behavior
Query # term added # term deleted
Code
string to time - -
string to time using java 2 -
date string to DateTime using
Joda Time library
4 2
Non-code
hotel in gothenburg - -
best hotel in gothenburg 1 -
48. 48
RQ2: Query Search Behavior
Query # term added # term deleted Code Score
Code
string to time - - 12
string to time using java 2 - 20
date string to DateTime using
Joda Time library
4 2 30.5
49. 49
RQ2: Query Search Behavior
Query # term added # term deleted Code Score
Code
string to time - - 12
string to time using java 2 - 20
date string to DateTime using
Joda Time library
4 2 30.5
Edit query to increase code intent
50. 50
RQ3: Task Search Behavior
Query # query Task intent
Code
Task
string to time
4
Converting a date
string to a Time
object
string to time using java
date string to DateTime
using Joda Time library
Non-code
Task
hotel in gothenburg
2
Hotel booking in
Gothenburgbest hotel in gothenburg
More queries required to complete a code task
51. 51
RQ3: Task Search Behavior
Query Task intent
Search duration
(minute)
# web visit
Code
Task
string to time
Converting a date
string to a Time
object
6 15
string to time using java
date string to DateTime
using Joda Time library
Non-code
Task
hotel in gothenburg Hotel booking in
Sweden
2 5
hotel in stockholm
More time and website visit required
to complete code related tasks
52. Summary
Code Non-Code
52
Code queries are linguistically different
Users modify code queries more often
Users give significantly more effort for
code task
General Search Engine
53. Summary
Code Non-Code
General Search Engine
53
Code queries are linguistically different
Users modify code queries more often
Users spend significantly more effort for
code task
Code search is less effective
54. Summary
Code Non-Code
General Search Engine
54
Code queries are linguistically different
Users modify code queries more often
Users spend significantly more effort for
code task
Code search is less effective
Special treatment required
to improve code retrieval
55. Question?
Code Non-Code
General Search Engine
55
Code queries are linguistically different
Users modify code queries more often
Users spend significantly more effort for
code task
Code search is less effective
Special treatment required
to improve code retrieval