위키백과:KIWI/2023년 5호/독자기고B
소도구 자작을 통한 효율적인 위키생활
안녕하세요, Respice post te입니다. 저는 2023년 5월부터 위키백과에서 기여를 시작했고, 이곳이 제 삶의 일부가 되었습니다. 위키백과는 단순히 정보의 보고가 아니라, 우리가 함께 만들어가는 생동감 넘치는 공간이죠.
제가 위키백과 생활을 선택한 이유 중 하나는, 위키백과가 사용자들에게 기술적인 도구들을 통해 직접 참여하고 편집할 수 있는 기회를 제공한다는 점입니다. 이러한 도구들은 우리가 보다 쉽게 기여하고, 에디터로서의 경험을 한층 효율적이고 즐겁게 만들어 줍니다.
수많은 도구들 중에서도, 반달리즘을 막는 'Twinkle’과 ‘RedWarn’, 분류를 관리하는 'HotCat’과 같은 사용자 스크립트는 우리의 작업을 단순화하여 시간을 절약하도록 도와줍니다. 하지만 모든 사용자의 필요를 다 충족시키는 완벽한 도구는 없기에, 때로 우리는 직접 스크립트를 만들 필요가 있습니다.
사용자 스크립트를 만들기 위해서는 프로그래밍 지식이 필요하지만, 모두가 개발자는 아니기 때문에, 여기에서 인공지능(AI) 기술, 특히 'ChatGPT’와 같은 도구들은 기본적인 코드 생성부터 정보 제공에 이르기까지, 사용자 스크립트를 개발하는 데 큰 도움을 줄 수 있습니다. 그러나 AI가 100%의 정확성을 보장하지는 않으므로 모든 경우에서 코드를 검증 없이 사용해서는 안 됩니다. 항상 코드를 검토하고, 테스트하며, 경험자들로부터 피드백을 받는 것이 중요합니다.
Chat GPT를 통한 개발에 대한 다음의 간단한 예시를 통해 이해를 돕고자 합니다.
Q. 위키백과 도구창에 ‘사랑방’으로 바로 갈 수 있는 링크를 추가하는 코드를 만들어 주세요.
이런 종류의 질문에 Chat GPT는 처음에는 엉뚱한 대답을 내놓을 것입니다. 따라서 우리는 Chat GPT에게 위키백과의 사용자 스크립트 프로그래밍 방식에 대한 길잡이가 될 수 있는 코드를 학습시켜야 합니다. 저는 영어판 위키백과의 사용자 스크립트 가이드에 있는
// Make sure the utilities module is loaded (will only load if not already)
mw.loader.using( 'mediawiki.util', function () {
// Wait for the page to be parsed
$( document ).ready( function () {
//see below "Portlets" subsection
var link = mw.util.addPortletLink( 'p-cactions', '#', 'Wikify', 'ca-wikify', 'Mark for wikification');
$( link ).click( function ( event ) {
event.preventDefault();
doQwikify();
} );
} );
} );
이 코드를 먼저 학습시킨 후 다시 질문하였습니다.
그러자 Chat GPT는 다음과 같은 코드를 제안하였습니다.:
mw.loader.using('mediawiki.util', function () {
$(document).ready(function () {
var link = mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('위키백과:사랑방'),
'사랑방',
't-love',
'위키백과 사랑방으로 이동',
'l'
);
$(link).click(function (event) {
event.preventDefault(); // 이벤트의 기본 동작을 취소
window.location.href = mw.util.getUrl('위키백과:사랑방'); // 사랑방 페이지로 이동
});
});
});
위 코드는 도구창에 사용자들의 요구에 맞는 링크를 성공적으로 추가해주며, 클릭 시 ‘위키백과:사랑방’ 문서로 이동함으로써, 우리가 원하는 동작을 이루어냅니다. 이런 방식을 통한 사용자 스크립트 개발은 프로그래밍 경험이 많지 않은 사용자에게도 큰 도움이 됩니다.
물론, 더 복잡한 스크립트 개발에 있어 AI의 한계가 존재합니다. 이럴때 우리는 이미 만들어져있는 초안 코드를 학습시켜 Chat GPT에게 올바른 방향을 제시하여 줄 수 있습니다. 그러나 Chat GPT는 단순한 도구일 뿐이며 결과적으로 직접 코드를 제작할 수 없다면 더 다양하고 복잡한 작업을 수행하는 사용자 스크립트는 만들 수 없으므로 Chat GPT와 대화하며 여러 프로그래밍 기술을 습득하여 점차 성장해나가야 합니다.
프로그래밍 기술을 늘리기 위하여 백:사용자 스크립트나 다른 사용자들의 코드를 참고해 보는 것도 좋습니다. 또한 우리는 위키백과에 선한 영향력을 미치는 방향으로 코드를 개발해야 합니다.
여러분도 사용자 스크립트 개발에 도전하여 더욱 편리하고 효율적인 위키 생활을 만들어 보세요. 지금까지 Respice post te였습니다. 감사합니다!